<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremoteESP8266: src/ir_Haier.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">IRremoteESP8266
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">ir_Haier.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="ir__Haier_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// Copyright 2018-2021 crankyoldgit</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">// Supports:</span></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">//   Brand: Haier,  Model: HSU07-HEA03 remote (HAIER_AC)</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">//   Brand: Haier,  Model: YR-W02 remote (HAIER_AC_YRW02)</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">//   Brand: Haier,  Model: HSU-09HMC203 A/C (HAIER_AC_YRW02)</span></div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">//   Brand: Haier,  Model: V9014557 M47 8D remote (HAIER_AC176)</span></div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">//   Brand: Mabe,   Model: MMI18HDBWCA6MI8 A/C (HAIER_AC176)</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">//   Brand: Mabe,   Model: V12843 HJ200223 remote (HAIER_AC176)</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">//   Brand: Daichi, Model: D-H A/C (HAIER_AC176)</span></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment">//   Brand: Haier,  Model: KFR-26GW/83@UI-Ge A/C (HAIER_AC160)</span></div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#ifndef IR_HAIER_H_</span></div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#define IR_HAIER_H_</span></div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &lt;Arduino.h&gt;</span></div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRremoteESP8266_8h.html">IRremoteESP8266.h</a>&quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRsend_8h.html">IRsend.h</a>&quot;</span></div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#ifdef UNIT_TEST</span></div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &quot;IRsend_test.h&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html">   36</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionHaierProtocol.html">HaierProtocol</a>{</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#af8966fa819bcb51f496ec185130bcf0f">   38</a></span>&#160;  uint8_t <a class="code" href="unionHaierProtocol.html#af8966fa819bcb51f496ec185130bcf0f">remote_state</a>[<a class="code" href="IRremoteESP8266_8h.html#afb4cd0c1a9c689d862e7095f0ab6dbe5">kHaierACStateLength</a>];</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;  <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <span class="comment">// Byte 0</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a6c15a8e22231dae23ffa8bef78420054">   41</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#a6c15a8e22231dae23ffa8bef78420054">Prefix</a>;</div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <span class="comment">// Byte 1</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#aeb39971e74e12fb0c7463006d6c644bd">   43</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#aeb39971e74e12fb0c7463006d6c644bd">Command</a>:4;</div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#affb6ef60b50ae3351393e3f168ae8f2f">   44</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#affb6ef60b50ae3351393e3f168ae8f2f">Temp</a>   :4;</div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <span class="comment">// Byte 2</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a093d2441856e448462551ac7bc1b8d9b">   46</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#a093d2441856e448462551ac7bc1b8d9b">CurrHours</a>:5;</div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#aabc2a684c5936858544c02ec8a68afb9">   47</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#aabc2a684c5936858544c02ec8a68afb9">unknown</a>  :1;  <span class="comment">// value=1</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#afe05b4d562ec2f4990a5b26eaa96111f">   48</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#afe05b4d562ec2f4990a5b26eaa96111f">SwingV</a>   :2;</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <span class="comment">// Byte 3</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a70abde8bccafd39cf1a1506f63481893">   50</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#a70abde8bccafd39cf1a1506f63481893">CurrMins</a>:6;</div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a6f3893711bffc1d59d8e3d76e7a954a2">   51</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#a6f3893711bffc1d59d8e3d76e7a954a2">OffTimer</a>:1;</div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#ae5c9fd1397bcf3c6737c38d8e76682b1">   52</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#ae5c9fd1397bcf3c6737c38d8e76682b1">OnTimer</a> :1;</div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="comment">// Byte 4</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#aecaad31185de1e7843047a9b9194d55b">   54</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#aecaad31185de1e7843047a9b9194d55b">OffHours</a>:5;</div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a4cf70c633e33066e3fc0f98bb2ad3820">   55</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#a4cf70c633e33066e3fc0f98bb2ad3820">Health</a>  :1;</div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a2648f0ff2bc5a6481e9fd2017408a590">   56</a></span>&#160;    uint8_t :0;</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="comment">// Byte 5</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a6eec6ff574e93f327ca567251b37e33b">   58</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#a6eec6ff574e93f327ca567251b37e33b">OffMins</a>:6;</div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a44e6a58782f4c6d5e532c715e9050b5b">   59</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#a44e6a58782f4c6d5e532c715e9050b5b">Fan</a>    :2;</div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <span class="comment">// Byte 6</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#af08311ee6680b3a6951bd200e2b8f310">   61</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#af08311ee6680b3a6951bd200e2b8f310">OnHours</a>:5;</div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#aab10d402084329d472e08385cc9645ec">   62</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#aab10d402084329d472e08385cc9645ec">Mode</a>   :3;</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="comment">// Byte 7</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a65fe65bdfb819fec434eba573daccc34">   64</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#a65fe65bdfb819fec434eba573daccc34">OnMins</a>:6;</div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a88942d48d868ff5697040d5a89f93099">   65</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#a88942d48d868ff5697040d5a89f93099">Sleep</a> :1;</div>
<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a8e91589ca0e2db529f73e3f8ecbb00a0">   66</a></span>&#160;    uint8_t :0;</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="comment">// Byte 8</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="unionHaierProtocol.html#a5842a170e3cdd0ad823cf244c7b8dd51">   68</a></span>&#160;    uint8_t <a class="code" href="unionHaierProtocol.html#a5842a170e3cdd0ad823cf244c7b8dd51">Sum</a>;</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;  };</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;};</div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">// Constants</span></div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a8502c9bea40205e01e6a01b47354272a">   74</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a8502c9bea40205e01e6a01b47354272a">kHaierAcPrefix</a> = 0b10100101;</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; </div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aafd2a4f38ecf78482a5a94e9c6c23f1c">   76</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aafd2a4f38ecf78482a5a94e9c6c23f1c">kHaierAcMinTemp</a> = 16;</div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a86c9e8176fc01e52e883cadcc1d31763">   77</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a86c9e8176fc01e52e883cadcc1d31763">kHaierAcDefTemp</a> = 25;</div>
<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a925252489fe34d9932151817d0dbe90b">   78</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a925252489fe34d9932151817d0dbe90b">kHaierAcMaxTemp</a> = 30;</div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a96599917176ee244874926d1a530dd7e">   79</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a96599917176ee244874926d1a530dd7e">kHaierAcCmdOff</a> =         0b0000;</div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a83973c2ad2b7b95611c81628c387e0d8">   80</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a83973c2ad2b7b95611c81628c387e0d8">kHaierAcCmdOn</a> =          0b0001;</div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a4543aa4ee28323bb9cb5c077f9bf9da1">   81</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a4543aa4ee28323bb9cb5c077f9bf9da1">kHaierAcCmdMode</a> =        0b0010;</div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a447818ec7970e2ca09540afe44ecf90d">   82</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a447818ec7970e2ca09540afe44ecf90d">kHaierAcCmdFan</a> =         0b0011;</div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aab5363f07920971c31d6acf8e70d392c">   83</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aab5363f07920971c31d6acf8e70d392c">kHaierAcCmdTempUp</a> =      0b0110;</div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aecc31139b4e45a7784669554c6fdbb54">   84</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aecc31139b4e45a7784669554c6fdbb54">kHaierAcCmdTempDown</a> =    0b0111;</div>
<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#abe52b62dd513395f2a8c7d47fa2fc514">   85</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#abe52b62dd513395f2a8c7d47fa2fc514">kHaierAcCmdSleep</a> =       0b1000;</div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a9bd7c081d460a4ae5e3eac977f3916e4">   86</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a9bd7c081d460a4ae5e3eac977f3916e4">kHaierAcCmdTimerSet</a> =    0b1001;</div>
<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ab780da80fc471f004c5b34dc8f347d00">   87</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ab780da80fc471f004c5b34dc8f347d00">kHaierAcCmdTimerCancel</a> = 0b1010;</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a83cd0b5f307d9ae3ed0a3c6ed8fef94d">   88</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a83cd0b5f307d9ae3ed0a3c6ed8fef94d">kHaierAcCmdHealth</a> =      0b1100;</div>
<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#afab164c2aabf39fdc1e956ff88af19d9">   89</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#afab164c2aabf39fdc1e956ff88af19d9">kHaierAcCmdSwing</a> =       0b1101;</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160; </div>
<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#afc9565ba02c286872e71f413ff2b2fa4">   91</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#afc9565ba02c286872e71f413ff2b2fa4">kHaierAcSwingVOff</a> =  0b00;</div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a6f828d385034c4b8c3089248714822de">   92</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a6f828d385034c4b8c3089248714822de">kHaierAcSwingVUp</a> =   0b01;</div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a9cc6b79cab7272bc27e2172dd07ba063">   93</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a9cc6b79cab7272bc27e2172dd07ba063">kHaierAcSwingVDown</a> = 0b10;</div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a6a7e96254910bdd7d1625a66d370bb56">   94</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a6a7e96254910bdd7d1625a66d370bb56">kHaierAcSwingVChg</a> =  0b11;</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ac33a02f63ee77e0d3050598511730865">   96</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ac33a02f63ee77e0d3050598511730865">kHaierAcAuto</a> = 0;</div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a83cd81ea1115f42a403ea5ee07a32bbb">   97</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a83cd81ea1115f42a403ea5ee07a32bbb">kHaierAcCool</a> = 1;</div>
<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a3d36fbe1308221248f45044e5a671636">   98</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a3d36fbe1308221248f45044e5a671636">kHaierAcDry</a> = 2;</div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a0edb011bdf85197e63a32d37f8517dd2">   99</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a0edb011bdf85197e63a32d37f8517dd2">kHaierAcHeat</a> = 3;</div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#af4049629b2139ca82471dfed1e1ced15">  100</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#af4049629b2139ca82471dfed1e1ced15">kHaierAcFan</a> = 4;</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160; </div>
<div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a8a34e74f7083caa98ed4afc31294539e">  102</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a8a34e74f7083caa98ed4afc31294539e">kHaierAcFanAuto</a> = 0;</div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ae31e878b09284a6730a11e2017cfd7a8">  103</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ae31e878b09284a6730a11e2017cfd7a8">kHaierAcFanLow</a> = 1;</div>
<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a5dfa833768e549964aa0bf8a336c32b0">  104</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a5dfa833768e549964aa0bf8a336c32b0">kHaierAcFanMed</a> = 2;</div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aa4d9e45ca5777707778ef78a3284da19">  105</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aa4d9e45ca5777707778ef78a3284da19">kHaierAcFanHigh</a> = 3;</div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160; </div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ae04e48e926a7533c3b62f0ff991e1f88">  107</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Haier_8h.html#ae04e48e926a7533c3b62f0ff991e1f88">kHaierAcMaxTime</a> = (23 * 60) + 59;</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ac63b91acdffa55d440b08aee05bda5dc">  109</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ac63b91acdffa55d440b08aee05bda5dc">kHaierAcSleepBit</a> = 0b01000000;</div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160; </div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="comment">// Legacy Haier AC defines.</span></div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">#define HAIER_AC_MIN_TEMP kHaierAcMinTemp</span></div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="preprocessor">#define HAIER_AC_DEF_TEMP kHaierAcDefTemp</span></div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor">#define HAIER_AC_MAX_TEMP kHaierAcMaxTemp</span></div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_OFF kHaierAcCmdOff</span></div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_ON kHaierAcCmdOn</span></div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_MODE kHaierAcCmdMode</span></div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_FAN kHaierAcCmdFan</span></div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_TEMP_UP kHaierAcCmdTempUp</span></div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_TEMP_DOWN kHaierAcCmdTempDown</span></div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_SLEEP kHaierAcCmdSleep</span></div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_TIMER_SET kHaierAcCmdTimerSet</span></div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_TIMER_CANCEL kHaierAcCmdTimerCancel</span></div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_HEALTH kHaierAcCmdHealth</span></div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">#define HAIER_AC_CMD_SWINGV kHaierAcCmdSwing</span></div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="preprocessor">#define HAIER_AC_SWINGV_OFF kHaierAcSwingVOff</span></div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="preprocessor">#define HAIER_AC_SWINGV_UP kHaierAcSwingVUp</span></div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="preprocessor">#define HAIER_AC_SWINGV_DOWN kHaierAcSwingVDown</span></div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="preprocessor">#define HAIER_AC_SWINGV_CHG kHaierAcSwingVChg</span></div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="preprocessor">#define HAIER_AC_AUTO kHaierAcAuto</span></div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="preprocessor">#define HAIER_AC_COOL kHaierAcCool</span></div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="preprocessor">#define HAIER_AC_DRY kHaierAcDry</span></div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="preprocessor">#define HAIER_AC_HEAT kHaierAcHeat</span></div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor">#define HAIER_AC_FAN kHaierAcFan</span></div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="preprocessor">#define HAIER_AC_FAN_AUTO kHaierAcFanAuto</span></div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="preprocessor">#define HAIER_AC_FAN_LOW kHaierAcFanLow</span></div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="preprocessor">#define HAIER_AC_FAN_MED kHaierAcFanMed</span></div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="preprocessor">#define HAIER_AC_FAN_HIGH kHaierAcFanHigh</span></div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; </div>
<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aa0a674fb0b2dac00633396e629eaa757">  140</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aa0a674fb0b2dac00633396e629eaa757">kHaierAcYrw02MinTempC</a> = 16;</div>
<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a509f8b471965c8a98ef07d2916c0aa78">  141</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a509f8b471965c8a98ef07d2916c0aa78">kHaierAcYrw02MaxTempC</a> = 30;</div>
<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a9e865309d508522c4b5f04fb6ecac541">  142</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a9e865309d508522c4b5f04fb6ecac541">kHaierAcYrw02MinTempF</a> = 60;</div>
<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a53edf8d79896b000840144f12db510f0">  143</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a53edf8d79896b000840144f12db510f0">kHaierAcYrw02MaxTempF</a> = 86;</div>
<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aaefcc9aea55434b0a31e30ea20f2a41a">  144</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aaefcc9aea55434b0a31e30ea20f2a41a">kHaierAcYrw02DefTempC</a> = 25;</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160; </div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ae36f27a78f0c7463506f9d9c2ef8fc6f">  146</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ae36f27a78f0c7463506f9d9c2ef8fc6f">kHaierAcYrw02ModelA</a> = 0xA6;</div>
<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ae514e61ee32c322d0069d5226e5cada1">  147</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ae514e61ee32c322d0069d5226e5cada1">kHaierAcYrw02ModelB</a> = 0x59;</div>
<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a12cae5decc9032d65bca18d84d817fc2">  148</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a12cae5decc9032d65bca18d84d817fc2">kHaierAc176Prefix</a> = 0xB7;</div>
<div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aee53abc217ebadccdf353c570846a603">  149</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aee53abc217ebadccdf353c570846a603">kHaierAc160Prefix</a> = 0xB5;</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160; </div>
<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#af91b01320a7a7acaf29269e0366565b4">  151</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#af91b01320a7a7acaf29269e0366565b4">kHaierAcYrw02SwingVOff</a> = 0x0;</div>
<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#af04e8cba561b9d03969ce95fd3013b59">  152</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#af04e8cba561b9d03969ce95fd3013b59">kHaierAcYrw02SwingVTop</a> = 0x1;</div>
<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a8dfaa51fab56a3d8c5d010e450d5e0e0">  153</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a8dfaa51fab56a3d8c5d010e450d5e0e0">kHaierAcYrw02SwingVMiddle</a> = 0x2;  <span class="comment">// Not available in heat mode.</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ad422f9dd03af1504f5b8e441c190c9f9">  154</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ad422f9dd03af1504f5b8e441c190c9f9">kHaierAcYrw02SwingVBottom</a> = 0x3;  <span class="comment">// Only available in heat mode.</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aa52f6fc78d550d27024b07a9f7966544">  155</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aa52f6fc78d550d27024b07a9f7966544">kHaierAcYrw02SwingVDown</a> = 0xA;</div>
<div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a20480c65ea6e806cab6663ff0ccf6860">  156</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a20480c65ea6e806cab6663ff0ccf6860">kHaierAcYrw02SwingVAuto</a> = 0xC;  <span class="comment">// Airflow</span></div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160; </div>
<div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#abe139740ea22c7abf294933e5b958c69">  158</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#abe139740ea22c7abf294933e5b958c69">kHaierAc160SwingVOff</a> =     0b0000;</div>
<div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a27c3c3fa51224900a5cf7bfbe6935f0d">  159</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a27c3c3fa51224900a5cf7bfbe6935f0d">kHaierAc160SwingVTop</a> =     0b0001;</div>
<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a87fd6a1834c5a78a36658722f62a9a88">  160</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a87fd6a1834c5a78a36658722f62a9a88">kHaierAc160SwingVHighest</a> = 0b0010;</div>
<div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a24fe81c1274c7a1380e41a768b3e33c2">  161</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a24fe81c1274c7a1380e41a768b3e33c2">kHaierAc160SwingVHigh</a> =    0b0100;</div>
<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a72465e195bf8042a74d9b2ccb5e0b18c">  162</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a72465e195bf8042a74d9b2ccb5e0b18c">kHaierAc160SwingVMiddle</a> =  0b0110;</div>
<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a167705c579d16ca7f497b625949fbe9f">  163</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a167705c579d16ca7f497b625949fbe9f">kHaierAc160SwingVLow</a> =     0b1000;</div>
<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a3dc6299c16ea746376d337f4631dc517">  164</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a3dc6299c16ea746376d337f4631dc517">kHaierAc160SwingVLowest</a> =  0b0011;</div>
<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a396462490721b4673df47cf20f3710f4">  165</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a396462490721b4673df47cf20f3710f4">kHaierAc160SwingVAuto</a> =    0b1100;  <span class="comment">// Airflow</span></div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160; </div>
<div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a653c6b51a20515cb6e9ce2b4e0fc71df">  167</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a653c6b51a20515cb6e9ce2b4e0fc71df">kHaierAcYrw02SwingHMiddle</a> = 0x0;</div>
<div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aa7451fe524b1424e841ff1089e4dda8d">  168</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aa7451fe524b1424e841ff1089e4dda8d">kHaierAcYrw02SwingHLeftMax</a> = 0x3;</div>
<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ac14afe7606ea573eb6642899f3315a40">  169</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ac14afe7606ea573eb6642899f3315a40">kHaierAcYrw02SwingHLeft</a> = 0x4;</div>
<div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a61a6dd4d91bddae89c8d6800159d5544">  170</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a61a6dd4d91bddae89c8d6800159d5544">kHaierAcYrw02SwingHRight</a> = 0x5;</div>
<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ad51db48288228061ce0f3404dd8f4001">  171</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ad51db48288228061ce0f3404dd8f4001">kHaierAcYrw02SwingHRightMax</a> = 0x6;</div>
<div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aafe61ad21d7094608e07dfd0d55b52d4">  172</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aafe61ad21d7094608e07dfd0d55b52d4">kHaierAcYrw02SwingHAuto</a> = 0x7;</div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160; </div>
<div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ab47bc48ac77fbf6734a41d10f0a53e4a">  174</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ab47bc48ac77fbf6734a41d10f0a53e4a">kHaierAcYrw02FanHigh</a> = 0b001;</div>
<div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a65583649324c6039112e7db26d685afc">  175</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a65583649324c6039112e7db26d685afc">kHaierAcYrw02FanMed</a> =  0b010;</div>
<div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a9a0a14ab98e1e52b60b9b9bf611c20cc">  176</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a9a0a14ab98e1e52b60b9b9bf611c20cc">kHaierAcYrw02FanLow</a> =  0b011;</div>
<div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ad554d38035ac15e4ea8b855802886989">  177</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ad554d38035ac15e4ea8b855802886989">kHaierAcYrw02FanAuto</a> = 0b101;  <span class="comment">// HAIER_AC176 uses `0` in Fan2</span></div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160; </div>
<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aa025eeba1c344c50cc98334c97a3c174">  179</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aa025eeba1c344c50cc98334c97a3c174">kHaierAcYrw02Auto</a> = 0b000;  <span class="comment">// 0</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a30c5d4e61ae3112a8a3e3622eecbb10b">  180</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a30c5d4e61ae3112a8a3e3622eecbb10b">kHaierAcYrw02Cool</a> = 0b001;  <span class="comment">// 1</span></div>
<div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a66cd902f2d35b4c8f66f085a0950a5fc">  181</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a66cd902f2d35b4c8f66f085a0950a5fc">kHaierAcYrw02Dry</a> =  0b010;  <span class="comment">// 2</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aa0873975b6649294a3c9943130cb7a38">  182</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aa0873975b6649294a3c9943130cb7a38">kHaierAcYrw02Heat</a> = 0b100;  <span class="comment">// 4</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a35f50f043a2dda75c59507c1ed845b5d">  183</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a35f50f043a2dda75c59507c1ed845b5d">kHaierAcYrw02Fan</a> =  0b110;  <span class="comment">// 5</span></div>
<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160; </div>
<div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a3b24373f9c812f93eca05ee47e61d6e0">  185</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a3b24373f9c812f93eca05ee47e61d6e0">kHaierAcYrw02ButtonTempUp</a> =   0b00000;</div>
<div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#af4a9e5f7f705c331531ea2863dbbd11d">  186</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#af4a9e5f7f705c331531ea2863dbbd11d">kHaierAcYrw02ButtonTempDown</a> = 0b00001;</div>
<div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a57cba34d9ec6c406e98a2385bbae58c6">  187</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a57cba34d9ec6c406e98a2385bbae58c6">kHaierAcYrw02ButtonSwingV</a> =   0b00010;</div>
<div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a798aca6bd1c58b86ac717fc2de6a70c8">  188</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a798aca6bd1c58b86ac717fc2de6a70c8">kHaierAcYrw02ButtonSwingH</a> =   0b00011;</div>
<div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a0f9c265510e1e27f38817f08ef9c622b">  189</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a0f9c265510e1e27f38817f08ef9c622b">kHaierAcYrw02ButtonFan</a> =      0b00100;</div>
<div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#af36b9c628a697f6c596052ecd143d80b">  190</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#af36b9c628a697f6c596052ecd143d80b">kHaierAcYrw02ButtonPower</a> =    0b00101;</div>
<div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a74466c50b450b08407c9f226a5d657e5">  191</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a74466c50b450b08407c9f226a5d657e5">kHaierAcYrw02ButtonMode</a> =     0b00110;</div>
<div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ab1dc6c0a4ed59446bb69c4dd671c78cd">  192</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ab1dc6c0a4ed59446bb69c4dd671c78cd">kHaierAcYrw02ButtonHealth</a> =   0b00111;</div>
<div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ad80547c526b2eba142297715c0a0636d">  193</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ad80547c526b2eba142297715c0a0636d">kHaierAcYrw02ButtonTurbo</a> =    0b01000;</div>
<div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a5c7b8ff351e3d0167ec2c897c4820c40">  194</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a5c7b8ff351e3d0167ec2c897c4820c40">kHaierAcYrw02ButtonSleep</a> =    0b01011;</div>
<div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a7296e228ad486af8e31062bfb1b149ed">  195</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a7296e228ad486af8e31062bfb1b149ed">kHaierAcYrw02ButtonTimer</a> =    0b10000;</div>
<div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a09180578731549106d8803b614d0949f">  196</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a09180578731549106d8803b614d0949f">kHaierAcYrw02ButtonLock</a> =     0b10100;</div>
<div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a07f68dc62e1315ea7dcdcc33f15d813b">  197</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a07f68dc62e1315ea7dcdcc33f15d813b">kHaierAc160ButtonLight</a> =      0b10101;</div>
<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a0ddcc202ded32bb7eb23b8b2b0e85a4c">  198</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a0ddcc202ded32bb7eb23b8b2b0e85a4c">kHaierAc160ButtonAuxHeating</a> = 0b10110;</div>
<div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#afb6ef94635539f1b66decd07079bb2a2">  199</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#afb6ef94635539f1b66decd07079bb2a2">kHaierAc160ButtonClean</a> =      0b11001;</div>
<div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ac08a11d13a4054a86b7eeef6ae9a372b">  200</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ac08a11d13a4054a86b7eeef6ae9a372b">kHaierAcYrw02ButtonCFAB</a> =     0b11010;</div>
<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160; </div>
<div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a38f92622851e2dd5cb33e65b4ffc6fc3">  202</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a38f92622851e2dd5cb33e65b4ffc6fc3">kHaierAcYrw02NoTimers</a>       = 0b000;</div>
<div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#ae7e1429d1574f88e03589005ae221c15">  203</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#ae7e1429d1574f88e03589005ae221c15">kHaierAcYrw02OffTimer</a>       = 0b001;</div>
<div class="line"><a name="l00204"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a9df47b9b9d72c6f30fc9f4aa96610dd0">  204</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a9df47b9b9d72c6f30fc9f4aa96610dd0">kHaierAcYrw02OnTimer</a>        = 0b010;</div>
<div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#aa46862918e790c35a0a0f162145ab179">  205</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#aa46862918e790c35a0a0f162145ab179">kHaierAcYrw02OnThenOffTimer</a> = 0b100;</div>
<div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="ir__Haier_8h.html#a31247c83284fb820749b230c1fe493db">  206</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Haier_8h.html#a31247c83284fb820749b230c1fe493db">kHaierAcYrw02OffThenOnTimer</a> = 0b101;</div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160; </div>
<div class="line"><a name="l00209"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html">  209</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionHaierAc176Protocol.html">HaierAc176Protocol</a>{</div>
<div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a2467b11e1819c2e6eeb7e9b488f22dee">  210</a></span>&#160;  uint8_t <a class="code" href="unionHaierAc176Protocol.html#a2467b11e1819c2e6eeb7e9b488f22dee">raw</a>[<a class="code" href="IRremoteESP8266_8h.html#a98033047ba27af810bb90fe33169cef2">kHaierAC176StateLength</a>];  </div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;  <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;    <span class="comment">// Byte 0</span></div>
<div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#ac985a5c4c479700b42e6cb2d42a5c76b">  213</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#ac985a5c4c479700b42e6cb2d42a5c76b">Model</a>       :8;</div>
<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    <span class="comment">// Byte 1</span></div>
<div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#ac6c4ea5836ffa9d6c9e42fa410b80460">  215</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#ac6c4ea5836ffa9d6c9e42fa410b80460">SwingV</a>      :4;</div>
<div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a87214820af72dc60463d8f8e77686042">  216</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a87214820af72dc60463d8f8e77686042">Temp</a>        :4;  <span class="comment">// 16C~30C</span></div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;    <span class="comment">// Byte 2</span></div>
<div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a11644d16b5631c81d902a72baae22c1f">  218</a></span>&#160;    uint8_t             :5;</div>
<div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a6dec9046cb079650eddf4ad99930533a">  219</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a6dec9046cb079650eddf4ad99930533a">SwingH</a>      :3;</div>
<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    <span class="comment">// Byte 3</span></div>
<div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a6e32039b57a07e00ddc6c37afbf76a58">  221</a></span>&#160;    uint8_t             :1;</div>
<div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a72565d2954835156d9941a1c707457a9">  222</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a72565d2954835156d9941a1c707457a9">Health</a>      :1;</div>
<div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#aa2c963ca6b4191730cd133693be72564">  223</a></span>&#160;    uint8_t             :3;</div>
<div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a82068891fddbc38c19e918b09c5a5729">  224</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a82068891fddbc38c19e918b09c5a5729">TimerMode</a>   :3;</div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    <span class="comment">// Byte 4</span></div>
<div class="line"><a name="l00226"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a155e072851acd341baa6453a2ebb0c6d">  226</a></span>&#160;    uint8_t             :6;</div>
<div class="line"><a name="l00227"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#ae6fc8a3243acc62568d383120f64c124">  227</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#ae6fc8a3243acc62568d383120f64c124">Power</a>       :1;</div>
<div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#adb016949f37edadde6913497d83bc097">  228</a></span>&#160;    uint8_t             :1;</div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;    <span class="comment">// Byte 5</span></div>
<div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#aa88d3fca0537b7f263513d3bcd581a05">  230</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#aa88d3fca0537b7f263513d3bcd581a05">OffTimerHrs</a> :5;</div>
<div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a697835a6fb7157fef7a3831268f75484">  231</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a697835a6fb7157fef7a3831268f75484">Fan</a>         :3;</div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    <span class="comment">// Byte 6</span></div>
<div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#ab476a88b27ff4c4effb582242534f060">  233</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#ab476a88b27ff4c4effb582242534f060">OffTimerMins</a>:6;</div>
<div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a1e7fd853b97f819c1dd3063886f8bb67">  234</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a1e7fd853b97f819c1dd3063886f8bb67">Turbo</a>       :1;</div>
<div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a0bb91955566e92d153f34a1d2bb378bd">  235</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a0bb91955566e92d153f34a1d2bb378bd">Quiet</a>       :1;</div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;    <span class="comment">// Byte 7</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#af6dd230a36b4ddcadefa2845dbb9266b">  237</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#af6dd230a36b4ddcadefa2845dbb9266b">OnTimerHrs</a>  :5;</div>
<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a57106aaab1e6506d281d0d0fb26e142e">  238</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a57106aaab1e6506d281d0d0fb26e142e">Mode</a>        :3;</div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;    <span class="comment">// Byte 8</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#aa69c99ac3a7dae7b4d5a40ad72531a73">  240</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#aa69c99ac3a7dae7b4d5a40ad72531a73">OnTimerMins</a> :6;</div>
<div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a172e0e952710a5f12568684e49275055">  241</a></span>&#160;    uint8_t             :1;</div>
<div class="line"><a name="l00242"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#aed62fe9bfe0f3857312ed3ec4d4f1968">  242</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#aed62fe9bfe0f3857312ed3ec4d4f1968">Sleep</a>       :1;</div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;    <span class="comment">// Byte 9</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a41059cf1b8dfad56bb99e034e9ee5393">  244</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;    <span class="comment">// Byte 10</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a4b103da7d3c2095e86d1df0e7f2e7925">  246</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a4b103da7d3c2095e86d1df0e7f2e7925">ExtraDegreeF</a> :1;</div>
<div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a933d2ed688b15fe4712b1d4cac8754e4">  247</a></span>&#160;    uint8_t              :4;</div>
<div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a8ad1f97b6e36427067f8ac75a9a67489">  248</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a8ad1f97b6e36427067f8ac75a9a67489">UseFahrenheit</a>:1;</div>
<div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a5231a976530e9a5b411856848987f168">  249</a></span>&#160;    uint8_t              :2;</div>
<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;    <span class="comment">// Byte 11</span></div>
<div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a676545e6124dbf22fb22a815d67405ac">  251</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;    <span class="comment">// Byte 12</span></div>
<div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a30765e69d37eec9b59b8ce559cc75749">  253</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a30765e69d37eec9b59b8ce559cc75749">Button</a>      :5;</div>
<div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a1161e24993a2043d32b076ee49591955">  254</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a1161e24993a2043d32b076ee49591955">Lock</a>        :1;</div>
<div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a4e82904f0cce218b6c0b1f83398f32b5">  255</a></span>&#160;    uint8_t             :2;</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;    <span class="comment">// Byte 13</span></div>
<div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a96eccf9d3e4649dec6aed33320331f16">  257</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a96eccf9d3e4649dec6aed33320331f16">Sum</a>         :8;</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    <span class="comment">// Byte 14</span></div>
<div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a5fca07a343939b63403de8bfd42cd97a">  259</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a5fca07a343939b63403de8bfd42cd97a">Prefix2</a>     :8;</div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    <span class="comment">// Byte 15</span></div>
<div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a221a433c35ecfad02dcbe3555b16849b">  261</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    <span class="comment">// Byte 16</span></div>
<div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#ab6ede4497065fdbda2b614bf8ff2c3c4">  263</a></span>&#160;    uint8_t             :6;</div>
<div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#ac839f6afa8d40ab8f4db4ab4b96f83de">  264</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#ac839f6afa8d40ab8f4db4ab4b96f83de">Fan2</a>        :2;</div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;    <span class="comment">// Byte 17</span></div>
<div class="line"><a name="l00266"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a30c789b98423e3fc581e9297bb68b287">  266</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;    <span class="comment">// Byte 18</span></div>
<div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a0633ffedc4eed3e0395a8128834245e4">  268</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;    <span class="comment">// Byte 19</span></div>
<div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a51c2d2b5ee6dd51dc4159842bd6ee2bb">  270</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;    <span class="comment">// Byte 20</span></div>
<div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a8321da7f0bb0e2927694d458973beea4">  272</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <span class="comment">// Byte 21</span></div>
<div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="unionHaierAc176Protocol.html#a5deaf89b8a04a4d22e2e7d40fb70cfa3">  274</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc176Protocol.html#a5deaf89b8a04a4d22e2e7d40fb70cfa3">Sum2</a>        :8;</div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;  };</div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;};</div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160; </div>
<div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html">  279</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionHaierAc160Protocol.html">HaierAc160Protocol</a>{</div>
<div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a04e1ea96f808b9a6bb755f7e08004ff6">  280</a></span>&#160;  uint8_t <a class="code" href="unionHaierAc160Protocol.html#a04e1ea96f808b9a6bb755f7e08004ff6">raw</a>[<a class="code" href="IRremoteESP8266_8h.html#a995fbc320365f7d86dc079774a637089">kHaierAC160StateLength</a>];  </div>
<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;  <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;    <span class="comment">// Byte 0</span></div>
<div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#ac822145539ba966899947bcbb7815d54">  283</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#ac822145539ba966899947bcbb7815d54">Model</a>       :8;</div>
<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    <span class="comment">// Byte 1</span></div>
<div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a3d6357b27ee78474e67cdbbc46dfa8fa">  285</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a3d6357b27ee78474e67cdbbc46dfa8fa">SwingV</a>      :4;</div>
<div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#af6aa843ddacc56c555e06201058a02cc">  286</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#af6aa843ddacc56c555e06201058a02cc">Temp</a>        :4;  <span class="comment">// 16C~30C</span></div>
<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;    <span class="comment">// Byte 2</span></div>
<div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#ae1030b2aecdb0ef3f99e9eee6ea327e7">  288</a></span>&#160;    uint8_t             :5;</div>
<div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a2cc3291a7c8c638bb43857c4a8b44ed9">  289</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a2cc3291a7c8c638bb43857c4a8b44ed9">SwingH</a>      :3;</div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    <span class="comment">// Byte 3</span></div>
<div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a27f65501333dc77a3a1f22ca82f9eb7e">  291</a></span>&#160;    uint8_t             :1;</div>
<div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#ae1d8d0ea08f8d5c18624f76f45e49a69">  292</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#ae1d8d0ea08f8d5c18624f76f45e49a69">Health</a>      :1;</div>
<div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a9db619d086aeb55823731133b6aa3003">  293</a></span>&#160;    uint8_t             :3;</div>
<div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a6d5bc29597842e3d8416d4618238028f">  294</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a6d5bc29597842e3d8416d4618238028f">TimerMode</a>   :3;</div>
<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;    <span class="comment">// Byte 4</span></div>
<div class="line"><a name="l00296"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a490eca6e00f9bb3a87cfe2c97af40c5b">  296</a></span>&#160;    uint8_t             :6;</div>
<div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#afad1829c3e5eba0e7bfe8828946ce7ca">  297</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#afad1829c3e5eba0e7bfe8828946ce7ca">Power</a>       :1;</div>
<div class="line"><a name="l00298"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#af2278990035472822aec048f9ea382bb">  298</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#af2278990035472822aec048f9ea382bb">AuxHeating</a>  :1;</div>
<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;    <span class="comment">// Byte 5</span></div>
<div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a85bf6870252fd840298177d9af6b0eae">  300</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a85bf6870252fd840298177d9af6b0eae">OffTimerHrs</a> :5;</div>
<div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a8eeb33dffd839ac0c1a238dbb1e5bdcd">  301</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a8eeb33dffd839ac0c1a238dbb1e5bdcd">Fan</a>         :3;</div>
<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    <span class="comment">// Byte 6</span></div>
<div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a4af84cad1d8ff458ee1683ec0110e2f7">  303</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a4af84cad1d8ff458ee1683ec0110e2f7">OffTimerMins</a>:6;</div>
<div class="line"><a name="l00304"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a40a119454fc3f87cc9ace8b65a4853b9">  304</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a40a119454fc3f87cc9ace8b65a4853b9">Turbo</a>       :1;</div>
<div class="line"><a name="l00305"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#af376a93bfd56fc11826316ffe74c2a9e">  305</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#af376a93bfd56fc11826316ffe74c2a9e">Quiet</a>       :1;</div>
<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    <span class="comment">// Byte 7</span></div>
<div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#ae5facd10ab60e89e17120a499795c15e">  307</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#ae5facd10ab60e89e17120a499795c15e">OnTimerHrs</a>  :5;</div>
<div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a349e0de16a9edf4dac3e2872dab87928">  308</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a349e0de16a9edf4dac3e2872dab87928">Mode</a>        :3;</div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    <span class="comment">// Byte 8</span></div>
<div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#afae387f19080e59e8b03e56c097ec204">  310</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#afae387f19080e59e8b03e56c097ec204">OnTimerMins</a> :6;</div>
<div class="line"><a name="l00311"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a39f9a130a2017fd006954c91fca31933">  311</a></span>&#160;    uint8_t             :1;</div>
<div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a498ac6af23e000723076365516e95927">  312</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a498ac6af23e000723076365516e95927">Sleep</a>       :1;</div>
<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    <span class="comment">// Byte 9</span></div>
<div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#ab3257fa80c27ebc8e1a9edb87b7b382f">  314</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <span class="comment">// Byte 10</span></div>
<div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a93371a85fe978fff425951ea953b9b76">  316</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a93371a85fe978fff425951ea953b9b76">ExtraDegreeF</a> :1;</div>
<div class="line"><a name="l00317"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a5ed265d59c86476585763d2da84607a8">  317</a></span>&#160;    uint8_t              :3;</div>
<div class="line"><a name="l00318"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#ad6354a470768f0a27ef6281be4e18a80">  318</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#ad6354a470768f0a27ef6281be4e18a80">Clean</a>        :1;</div>
<div class="line"><a name="l00319"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#af6aaf03208ecfd332e33afbfefed6158">  319</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#af6aaf03208ecfd332e33afbfefed6158">UseFahrenheit</a>:1;</div>
<div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a5903d5e633d7560f4e25536b7eace3a1">  320</a></span>&#160;    uint8_t              :2;</div>
<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    <span class="comment">// Byte 11</span></div>
<div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a46217a408fd96c5c776aa3bd48e68a79">  322</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    <span class="comment">// Byte 12</span></div>
<div class="line"><a name="l00324"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#abf4e66e527bf93093f0b759454dbf6d3">  324</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#abf4e66e527bf93093f0b759454dbf6d3">Button</a>      :5;</div>
<div class="line"><a name="l00325"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#aec3c250cf2fe63fdcd02090bd400f676">  325</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#aec3c250cf2fe63fdcd02090bd400f676">Lock</a>        :1;</div>
<div class="line"><a name="l00326"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a2f40d2c4881bb95da0fcb955eab4773a">  326</a></span>&#160;    uint8_t             :2;</div>
<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    <span class="comment">// Byte 13</span></div>
<div class="line"><a name="l00328"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a2a76e7495e33057e404562914b9c76e8">  328</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a2a76e7495e33057e404562914b9c76e8">Sum</a>         :8;</div>
<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    <span class="comment">// Byte 14</span></div>
<div class="line"><a name="l00330"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#af5e2b7618d27e479460096573f7f5001">  330</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#af5e2b7618d27e479460096573f7f5001">Prefix</a>     :8;</div>
<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;    <span class="comment">// Byte 15</span></div>
<div class="line"><a name="l00332"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a4b5b4fe1118500c833b2c95144225f0c">  332</a></span>&#160;    uint8_t             :6;</div>
<div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a8cb668293fe88379912b90515757ef07">  333</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a8cb668293fe88379912b90515757ef07">Clean2</a>      :1;</div>
<div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#aaed0a7f1eb8ee97cf4d840b590b7de09">  334</a></span>&#160;    uint8_t             :1;</div>
<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    <span class="comment">// Byte 16</span></div>
<div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a7269594d0868c4de741e2920ee17313a">  336</a></span>&#160;    uint8_t             :5;</div>
<div class="line"><a name="l00337"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a24d4d88f639758d995c4e5446ce7e234">  337</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a24d4d88f639758d995c4e5446ce7e234">Fan2</a>        :3;</div>
<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    <span class="comment">// Byte 17</span></div>
<div class="line"><a name="l00339"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a86a1b12ba8837e9e79e9605315297377">  339</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;    <span class="comment">// Byte 18</span></div>
<div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a86453a2666790a420b48fb5a6aae468e">  341</a></span>&#160;    uint8_t             :8;</div>
<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;    <span class="comment">// Byte 19</span></div>
<div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="unionHaierAc160Protocol.html#a5f87033a1ea45f87104382aa97146ada">  343</a></span>&#160;    uint8_t <a class="code" href="unionHaierAc160Protocol.html#a5f87033a1ea45f87104382aa97146ada">Sum2</a>        :8;</div>
<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;  };</div>
<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;};</div>
<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160; </div>
<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="comment">// Legacy Haier YRW02 remote defines.</span></div>
<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_SWING_OFF kHaierAcYrw02SwingOff</span></div>
<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_SWING_TOP kHaierAcYrw02SwingTop</span></div>
<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_SWING_MIDDLE kHaierAcYrw02SwingMiddle</span></div>
<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_SWING_BOTTOM kHaierAcYrw02SwingBottom</span></div>
<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_SWING_DOWN kHaierAcYrw02SwingDown</span></div>
<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_SWING_AUTO kHaierAcYrw02SwingAuto</span></div>
<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_FAN_HIGH kHaierAcYrw02FanHigh</span></div>
<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_FAN_MED kHaierAcYrw02FanMed</span></div>
<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_FAN_LOW kHaierAcYrw02FanLow</span></div>
<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_FAN_AUTO kHaierAcYrw02FanAuto</span></div>
<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_TURBO_OFF kHaierAcYrw02TurboOff</span></div>
<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_AUTO kHaierAcYrw02Auto</span></div>
<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_COOL kHaierAcYrw02Cool</span></div>
<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_DRY kHaierAcYrw02Dry</span></div>
<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_HEAT kHaierAcYrw02Heat</span></div>
<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_FAN kHaierAcYrw02Fan</span></div>
<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_BUTTON_TEMP_UP kHaierAcYrw02ButtonTempUp</span></div>
<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_BUTTON_TEMP_DOWN kHaierAcYrw02ButtonTempDown</span></div>
<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_BUTTON_SWING kHaierAcYrw02ButtonSwing</span></div>
<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_BUTTON_FAN kHaierAcYrw02ButtonFan</span></div>
<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_BUTTON_POWER kHaierAcYrw02ButtonPower</span></div>
<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_BUTTON_MODE kHaierAcYrw02ButtonMode</span></div>
<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_BUTTON_HEALTH kHaierAcYrw02ButtonHealth</span></div>
<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_BUTTON_TURBO kHaierAcYrw02ButtonTurbo</span></div>
<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">#define HAIER_AC_YRW02_BUTTON_SLEEP kHaierAcYrw02ButtonSleep</span></div>
<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160; </div>
<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="comment">// Classes</span></div>
<div class="line"><a name="l00376"></a><span class="lineno"><a class="line" href="classIRHaierAC.html">  376</a></span>&#160;<span class="comment"></span><span class="keyword">class </span><a class="code" href="classIRHaierAC.html">IRHaierAC</a> {</div>
<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classIRHaierAC.html#a0b78060cbd150cd886a409adc2dea49c">IRHaierAC</a>(<span class="keyword">const</span> uint16_t pin, <span class="keyword">const</span> <span class="keywordtype">bool</span> inverted = <span class="keyword">false</span>,</div>
<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;                     <span class="keyword">const</span> <span class="keywordtype">bool</span> use_modulation = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;<span class="preprocessor">#if SEND_HAIER_AC</span></div>
<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#a9fe53d04965efca6daf234f20d20eb5a">send</a>(<span class="keyword">const</span> uint16_t repeat = <a class="code" href="IRremoteESP8266_8h.html#a882914932449e33933b6f8e224cbaf3c">kHaierAcDefaultRepeat</a>);</div>
<div class="line"><a name="l00386"></a><span class="lineno"><a class="line" href="classIRHaierAC.html#a448b1d5db05f7722db4758e968ea3171">  386</a></span>&#160;  int8_t <a class="code" href="classIRHaierAC.html#a448b1d5db05f7722db4758e968ea3171">calibrate</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> <a class="code" href="classIRHaierAC.html#aec69643fe633a57d635754690225fdd1">_irsend</a>.<a class="code" href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">calibrate</a>(); }</div>
<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="preprocessor">#endif  // SEND_HAIER_AC</span></div>
<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#ab92fd48ccb5707cb6d14e9d46ce42e17">begin</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#a62fbae1d2bac01ac3a2194274aa839d9">stateReset</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160; </div>
<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#ade34c951e72a794c2ff7fa0d1595d68f">setCommand</a>(<span class="keyword">const</span> uint8_t command);</div>
<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;  uint8_t <a class="code" href="classIRHaierAC.html#a0e9bea37c9f3a43ad205994b396d5cd2">getCommand</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160; </div>
<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#a9fb2a375cc1b8692fe4d5dcdd765cc46">setTemp</a>(<span class="keyword">const</span> uint8_t temp);</div>
<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;  uint8_t <a class="code" href="classIRHaierAC.html#aa6f23534e63039527bf92fc85fed2e2c">getTemp</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160; </div>
<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#a42ee1c5889f07bf7615c8f853bca2261">setFan</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;  uint8_t <a class="code" href="classIRHaierAC.html#a20efaa79ca7ead0b08f19a4b41c198aa">getFan</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160; </div>
<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;  uint8_t <a class="code" href="classIRHaierAC.html#a2ddf59c6ce732c23a9898dfc6679be02">getMode</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#a3ad0317f2fd4f57d8ce61353ab3e48c7">setMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160; </div>
<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC.html#af88bef780a4f14f44cd7d2549f3838b3">getSleep</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#acb72b89fa53b565f9d32db4d8960f988">setSleep</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> on);</div>
<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC.html#aff4e7de97c375daf881249eefc1c60f8">getHealth</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#a48c9ae91809d63156eeb3889f2e908f4">setHealth</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> on);</div>
<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160; </div>
<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;  int16_t <a class="code" href="classIRHaierAC.html#a1c71cd51382036c4548b460a13072e91">getOnTimer</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#aa5e95aa05749f6d35dd31b021fea2f5b">setOnTimer</a>(<span class="keyword">const</span> uint16_t mins);</div>
<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;  int16_t <a class="code" href="classIRHaierAC.html#a4760af54cbc1618b2dc4c1bf57884ebb">getOffTimer</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#aa16b36aa7ef07628343dbd2dfe5157a2">setOffTimer</a>(<span class="keyword">const</span> uint16_t mins);</div>
<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#a1cccc733f74232751f95c32e47795638">cancelTimers</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160; </div>
<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;  uint16_t <a class="code" href="classIRHaierAC.html#ace3a6ad8816dbf5d4a9f8595cc621b09">getCurrTime</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#a53500ebdec058d27396e5906a572fe15">setCurrTime</a>(<span class="keyword">const</span> uint16_t mins);</div>
<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160; </div>
<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;  uint8_t <a class="code" href="classIRHaierAC.html#a6e550f89c7176ca89987cce9f0d27e27">getSwingV</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#ab6c92a20d85d7b92b2e3a07f471caad2">setSwingV</a>(<span class="keyword">const</span> uint8_t state);</div>
<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160; </div>
<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;  uint8_t* <a class="code" href="classIRHaierAC.html#abf72eed86c2c86c4f0f5f49f6a788b82">getRaw</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#a152961e20b5a5bed2ea03cbc65d65ce9">setRaw</a>(<span class="keyword">const</span> uint8_t new_code[]);</div>
<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC.html#ad7aae554b8f0a76493efc2a43ac0f780">validChecksum</a>(uint8_t state[],</div>
<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;                            <span class="keyword">const</span> uint16_t length = <a class="code" href="IRremoteESP8266_8h.html#afb4cd0c1a9c689d862e7095f0ab6dbe5">kHaierACStateLength</a>);</div>
<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRHaierAC.html#af6188dbed5cae022b4fd1eef358f594c">convertMode</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> mode);</div>
<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRHaierAC.html#a58628dd19a7247fc5358c0dc8c30baba">convertFan</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> speed);</div>
<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRHaierAC.html#a34053c32ba50ff3b81b208d068efe2a4">convertSwingV</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> position);</div>
<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> <a class="code" href="classIRHaierAC.html#a4d73f75516afff0ef18bdbb7ed9c26ed">toCommonMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> <a class="code" href="classIRHaierAC.html#ad67ee0b7299d041aad77382dde893229">toCommonFanSpeed</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> <a class="code" href="classIRHaierAC.html#aac354e2e4ad72d91667509398078b309">toCommonSwingV</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;  <a class="code" href="structstdAc_1_1state__t.html">stdAc::state_t</a> <a class="code" href="classIRHaierAC.html#a738de44369e3322d264c8ee78cc72ab6">toCommon</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;  <a class="code" href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a> <a class="code" href="classIRHaierAC.html#af52b438cc7c6b0600793a0eb3c8f6419">toString</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;<span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160; </div>
<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00435"></a><span class="lineno"><a class="line" href="classIRHaierAC.html#aec69643fe633a57d635754690225fdd1">  435</a></span>&#160;  <a class="code" href="classIRsend.html">IRsend</a> <a class="code" href="classIRHaierAC.html#aec69643fe633a57d635754690225fdd1">_irsend</a>;  </div>
<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;<span class="preprocessor">#else  // UNIT_TEST</span></div>
<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;  IRsendTest <a class="code" href="classIRHaierAC.html#aec69643fe633a57d635754690225fdd1">_irsend</a>;  </div>
<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00441"></a><span class="lineno"><a class="line" href="classIRHaierAC.html#a523b6e63f16c5f817d82bcdbf351d7e7">  441</a></span>&#160;  <a class="code" href="unionHaierProtocol.html">HaierProtocol</a> <a class="code" href="classIRHaierAC.html#a523b6e63f16c5f817d82bcdbf351d7e7">_</a>;</div>
<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC.html#ab7faae274ff7f30bf7df3c58d6e7e210">checksum</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;};</div>
<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160; </div>
<div class="line"><a name="l00446"></a><span class="lineno"><a class="line" href="classIRHaierAC176.html">  446</a></span>&#160;<span class="keyword">class </span><a class="code" href="classIRHaierAC176.html">IRHaierAC176</a> {</div>
<div class="line"><a name="l00447"></a><span class="lineno"><a class="line" href="classIRHaierAC176.html#ab926766f255d0eb61251bac33759737c">  447</a></span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classIRHaierACYRW02.html">IRHaierACYRW02</a>;</div>
<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classIRHaierAC176.html#aef3fe7154777a5784569ae1d8515aaff">IRHaierAC176</a>(<span class="keyword">const</span> uint16_t pin, <span class="keyword">const</span> <span class="keywordtype">bool</span> inverted = <span class="keyword">false</span>,</div>
<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;                        <span class="keyword">const</span> <span class="keywordtype">bool</span> use_modulation = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;<span class="preprocessor">#if SEND_HAIER_AC176</span></div>
<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a94b02df9d4993797a83fed89fc80cb73">send</a>(<span class="keyword">const</span> uint16_t repeat = <a class="code" href="IRremoteESP8266_8h.html#af87d7078ba6fd24dd489086111f14db6">kHaierAc176DefaultRepeat</a>);</div>
<div class="line"><a name="l00457"></a><span class="lineno"><a class="line" href="classIRHaierAC176.html#a00ffd726b01b31f8d5b9f28b00385055">  457</a></span>&#160;  int8_t <a class="code" href="classIRHaierAC176.html#a00ffd726b01b31f8d5b9f28b00385055">calibrate</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> <a class="code" href="classIRHaierAC176.html#a046413825ab2c42a7f6802ddd2c3affe">_irsend</a>.<a class="code" href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">calibrate</a>(); }</div>
<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;<span class="preprocessor">#endif  // SEND_HAIER_AC176</span></div>
<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a0cce16a99658dca3a7f1c5e7e0ccd714">begin</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a25aaea129dc847767c9a62dcc2e81d28">stateReset</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160; </div>
<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a03feab7dc7cc929aef0dbdd8837a5d4a">setModel</a>(<span class="keyword">const</span> <a class="code" href="IRsend_8h.html#ab7bb71697c8bb461b4103e8bb2982bfb">haier_ac176_remote_model_t</a> model);</div>
<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;  <a class="code" href="IRsend_8h.html#ab7bb71697c8bb461b4103e8bb2982bfb">haier_ac176_remote_model_t</a> <a class="code" href="classIRHaierAC176.html#a8f2f6a3b744163abf8334f1fc9fbc9ad">getModel</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160; </div>
<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a3ed07dbe74048ba28cadbed9cf5bc550">setButton</a>(<span class="keyword">const</span> uint8_t button);</div>
<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;  uint8_t <a class="code" href="classIRHaierAC176.html#a45422f4953e0aac049bb620f26f31254">getButton</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160; </div>
<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a2fcfe456d182bd6a0cae1671adfed7f8">setUseFahrenheit</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#ae56f7194610e4560622e08219319daee">on</a>);</div>
<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#adae0a3d5396631226c1df878f3615f4d">getUseFahrenheit</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#abe1f05159b39a9bdb35ae56d8589fb8f">setTemp</a>(<span class="keyword">const</span> uint8_t temp, <span class="keyword">const</span> <span class="keywordtype">bool</span> fahrenheit = <span class="keyword">false</span>);</div>
<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;  uint8_t <a class="code" href="classIRHaierAC176.html#a29a26ca01c597be392eb1f8fa7561ee9">getTemp</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160; </div>
<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a2d79e4ac349d80aedc7c259d62cdb2a7">setFan</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;  uint8_t <a class="code" href="classIRHaierAC176.html#a8fdc06806b0b2cffc7080623eb09a003">getFan</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160; </div>
<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;  uint8_t <a class="code" href="classIRHaierAC176.html#a9bb2287178e176b2baf41bf18b59047d">getMode</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a870541d6cc7baae68d9d8dc579eea1f7">setMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160; </div>
<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#ab9b07821d6f32e8adf9294d62987c4a2">getPower</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a044eeb36281c3ded0a795b3bc684457a">setPower</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#ae56f7194610e4560622e08219319daee">on</a>);</div>
<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#ae56f7194610e4560622e08219319daee">on</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#aa792830104726eb2b9aa95477763aa20">off</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160; </div>
<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#ae6e9f9187d2b3ed39a6b914cfc2e5c3a">getSleep</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#ac3eea0d8f62917921e0696e3de17c4e6">setSleep</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#ae56f7194610e4560622e08219319daee">on</a>);</div>
<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#ac0c90f29304c433751bba3245a88117c">getHealth</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a4f16aaebe380530e428f742772948c61">setHealth</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#ae56f7194610e4560622e08219319daee">on</a>);</div>
<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160; </div>
<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#aa6a300a1167a442bb44c585d2d5c1507">getTurbo</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a4f926b239d721cf2dce3d2aee703c1d0">setTurbo</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#ae56f7194610e4560622e08219319daee">on</a>);</div>
<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#aaf4a741a22fc198c6e7661b3b2aacac9">getQuiet</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a636ed7b995faa5243d0ef6b3f4bd0309">setQuiet</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#ae56f7194610e4560622e08219319daee">on</a>);</div>
<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160; </div>
<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;  uint8_t <a class="code" href="classIRHaierAC176.html#aeef2163538075c41282c7e26e8364f6a">getSwingV</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a402a39f6583348f49b6195c3527b05a8">setSwingV</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;  uint8_t <a class="code" href="classIRHaierAC176.html#a988c758fa00501b7111e93e7e380aae4">getSwingH</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a1f1efc862aec8858800c1077852b1350">setSwingH</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160; </div>
<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;  uint8_t <a class="code" href="classIRHaierAC176.html#a06c823b002f1136defe7a4296cd89f87">getSwing</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a1998836b66a6df15eefc1c6558569b9c">setSwing</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160; </div>
<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a94b69a66ba7aa5e0ffa1c4d711adac4a">setTimerMode</a>(<span class="keyword">const</span> uint8_t setting);</div>
<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;  uint8_t <a class="code" href="classIRHaierAC176.html#a50f563f249d5073e9565f06b11d3b4d2">getTimerMode</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a2c91e970fd31144fd49175675bc3cdba">setOnTimer</a>(<span class="keyword">const</span> uint16_t mins);</div>
<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;  uint16_t <a class="code" href="classIRHaierAC176.html#aaf9d46dff8b88a644b13dd9921c2e779">getOnTimer</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#ae31481f6e94ca7dadabf3b58e1925e82">setOffTimer</a>(<span class="keyword">const</span> uint16_t mins);</div>
<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;  uint16_t <a class="code" href="classIRHaierAC176.html#afcfa13804fd456b39b4459f7d05d0a92">getOffTimer</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160; </div>
<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#a2fa16f82aec3df48ec6c1ffcc1d1edda">getLock</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#ab5b8de8073524311a8a2514dfa5c2077">setLock</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#ae56f7194610e4560622e08219319daee">on</a>);</div>
<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160; </div>
<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;  uint8_t* <a class="code" href="classIRHaierAC176.html#a28594414eaac661df4d4d7dcdbacf217">getRaw</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#a72b13a31ebf9c3e1f94ec9664c0f115e">setRaw</a>(<span class="keyword">const</span> uint8_t new_code[]);</div>
<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#acb1d3109465ce8bdcc906f0ca38616e2">validChecksum</a>(<span class="keyword">const</span> uint8_t state[],</div>
<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;                            <span class="keyword">const</span> uint16_t length = <a class="code" href="IRremoteESP8266_8h.html#a98033047ba27af810bb90fe33169cef2">kHaierAC176StateLength</a>);</div>
<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRHaierAC176.html#a210363784930717240ab26d1a689985e">convertMode</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> mode);</div>
<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRHaierAC176.html#a19e50e429cf5b337f579c4ac9dcc8c12">convertFan</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> speed);</div>
<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRHaierAC176.html#a72ea4fa72f689c54241f4ef8013fcc66">convertSwingV</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> position);</div>
<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRHaierAC176.html#a82cd6fb7703d169e74e9b6ce2c10ad88">convertSwingH</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#aae50ee315fa9c9ec1a4078da40d6b147">stdAc::swingh_t</a> position);</div>
<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> <a class="code" href="classIRHaierAC176.html#afedbf0579e687915e32c21c45a31cd86">toCommonMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> <a class="code" href="classIRHaierAC176.html#ac50b30666db9615303220244a007f0db">toCommonFanSpeed</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> <a class="code" href="classIRHaierAC176.html#a379a1c72ffd1245a196cd734346e75a5">toCommonSwingV</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#aae50ee315fa9c9ec1a4078da40d6b147">stdAc::swingh_t</a> <a class="code" href="classIRHaierAC176.html#ae1d5920a503aa582e79713b8bfceb26c">toCommonSwingH</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#a75328b0d918e23f2561437321347e909">toCommonTurbo</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC176.html#a68cce96dd8385b0abbc7822c19914a73">toCommonQuiet</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;  <a class="code" href="structstdAc_1_1state__t.html">stdAc::state_t</a> <a class="code" href="classIRHaierAC176.html#a41668cae582eb7607a1299f11d3fcd52">toCommon</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;  <a class="code" href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a> <a class="code" href="classIRHaierAC176.html#a0b83d5a1fc9339569dccd43dd59aa275">toString</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;<span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160; </div>
<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00533"></a><span class="lineno"><a class="line" href="classIRHaierAC176.html#a046413825ab2c42a7f6802ddd2c3affe">  533</a></span>&#160;  <a class="code" href="classIRsend.html">IRsend</a> <a class="code" href="classIRHaierAC176.html#a046413825ab2c42a7f6802ddd2c3affe">_irsend</a>;  </div>
<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;<span class="preprocessor">#else  // UNIT_TEST</span></div>
<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;  IRsendTest <a class="code" href="classIRHaierAC176.html#a046413825ab2c42a7f6802ddd2c3affe">_irsend</a>;  </div>
<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="preprocessor">#endif  // UNIT_TEST</span></div>
<div class="line"><a name="l00539"></a><span class="lineno"><a class="line" href="classIRHaierAC176.html#a7f28698aa8e740c76493a9fd9cbba700">  539</a></span>&#160;  <a class="code" href="unionHaierAc176Protocol.html">HaierAc176Protocol</a> <a class="code" href="classIRHaierAC176.html#a7f28698aa8e740c76493a9fd9cbba700">_</a>;</div>
<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC176.html#aaea41bb190eeb0a44c83c03c3d122d61">checksum</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;};</div>
<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160; </div>
<div class="line"><a name="l00544"></a><span class="lineno"><a class="line" href="classIRHaierACYRW02.html">  544</a></span>&#160;<span class="keyword">class </span><a class="code" href="classIRHaierACYRW02.html">IRHaierACYRW02</a> : <span class="keyword">public</span> <a class="code" href="classIRHaierAC176.html">IRHaierAC176</a> {</div>
<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classIRHaierAC176.html#ab926766f255d0eb61251bac33759737c">IRHaierACYRW02</a>(<span class="keyword">const</span> uint16_t pin, <span class="keyword">const</span> <span class="keywordtype">bool</span> inverted = <span class="keyword">false</span>,</div>
<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;                          <span class="keyword">const</span> <span class="keywordtype">bool</span> use_modulation = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;<span class="preprocessor">#if SEND_HAIER_AC_YRW02</span></div>
<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierACYRW02.html#a398e5b9e79912807e06bfcc91a266ae4">send</a>(<span class="keyword">const</span> uint16_t repeat = <a class="code" href="IRremoteESP8266_8h.html#a62412e221207dbc2660f93dc265b4218">kHaierAcYrw02DefaultRepeat</a>) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00554"></a><span class="lineno"><a class="line" href="classIRHaierACYRW02.html#a2081b29d0526e339a6b94fc41c854197">  554</a></span>&#160;  int8_t <a class="code" href="classIRHaierACYRW02.html#a2081b29d0526e339a6b94fc41c854197">calibrate</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> <a class="code" href="classIRHaierAC176.html#a046413825ab2c42a7f6802ddd2c3affe">_irsend</a>.<a class="code" href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">calibrate</a>(); }</div>
<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;<span class="preprocessor">#endif  // SEND_HAIER_AC_YRW02</span></div>
<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierACYRW02.html#aa33abd66218439bf838d553964dbdd23">setRaw</a>(<span class="keyword">const</span> uint8_t new_code[]) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierACYRW02.html#ad247247ed5cddddedf5ff31e7c7afbeb">validChecksum</a>(</div>
<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;      <span class="keyword">const</span> uint8_t state[],</div>
<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;      <span class="keyword">const</span> uint16_t length = <a class="code" href="IRremoteESP8266_8h.html#a8f52b7d4595c117cf0b81ffbd1148cda">kHaierACYRW02StateLength</a>);</div>
<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;};</div>
<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160; </div>
<div class="line"><a name="l00563"></a><span class="lineno"><a class="line" href="classIRHaierAC160.html">  563</a></span>&#160;<span class="keyword">class </span><a class="code" href="classIRHaierAC160.html">IRHaierAC160</a> {</div>
<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classIRHaierAC160.html#a55777803fc8fd31c8741f31875dd9a6c">IRHaierAC160</a>(<span class="keyword">const</span> uint16_t pin, <span class="keyword">const</span> <span class="keywordtype">bool</span> inverted = <span class="keyword">false</span>,</div>
<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;                        <span class="keyword">const</span> <span class="keywordtype">bool</span> use_modulation = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;<span class="preprocessor">#if SEND_HAIER_AC160</span></div>
<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a54c893fbe47a93029e5ca105438ba832">send</a>(<span class="keyword">const</span> uint16_t repeat = <a class="code" href="IRremoteESP8266_8h.html#a6e9c641809880b032e33e36d1d84f842">kHaierAc160DefaultRepeat</a>);</div>
<div class="line"><a name="l00573"></a><span class="lineno"><a class="line" href="classIRHaierAC160.html#aca0255b239860dc34e1ff401758dd639">  573</a></span>&#160;  int8_t <a class="code" href="classIRHaierAC160.html#aca0255b239860dc34e1ff401758dd639">calibrate</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> <a class="code" href="classIRHaierAC160.html#af64736f333b9fcac509042b5ca0a8d11">_irsend</a>.<a class="code" href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">calibrate</a>(); }</div>
<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;<span class="preprocessor">#endif  // SEND_HAIER_AC160</span></div>
<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#aa16e560145efa44bf7b4e908b1ce5179">begin</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a11e68d6a4bd6ff6014bec2b003da8526">stateReset</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160; </div>
<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a1974397407adb89278054c9e7351b9c2">setButton</a>(<span class="keyword">const</span> uint8_t button);</div>
<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;  uint8_t <a class="code" href="classIRHaierAC160.html#ae677c5222821f424771b223d8d6e5f14">getButton</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160; </div>
<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a2dabfc2c7969e36b09cf9e3bd8ab14b3">setUseFahrenheit</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>);</div>
<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a546655c0859e1d275259a82085c37a08">getUseFahrenheit</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a778c43166c25572360ea51e0aaddf561">setTemp</a>(<span class="keyword">const</span> uint8_t temp, <span class="keyword">const</span> <span class="keywordtype">bool</span> fahrenheit = <span class="keyword">false</span>);</div>
<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;  uint8_t <a class="code" href="classIRHaierAC160.html#a4088c5b99375a891568d05e57669b1c7">getTemp</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160; </div>
<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a05ca549c6c70b7dfd76fe90ce889266d">setFan</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;  uint8_t <a class="code" href="classIRHaierAC160.html#ac3b0e49cf59fa2bac7e6043ff8db19f3">getFan</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160; </div>
<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;  uint8_t <a class="code" href="classIRHaierAC160.html#a23f00c7174cc76d72e8731f8c8bde108">getMode</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a3d360881f832a992000e6bd49df4a9b0">setMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160; </div>
<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#af2b7ca52e6cbe9209410b9208ae0e4fd">getPower</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a6def5b9a8653277379be6591ce0773f7">setPower</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>);</div>
<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a7a981ef3f3ec1f3378cd7dc5de0195a3">off</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160; </div>
<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a93a20552b0670196662de1c3d1ed9e4f">getSleep</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a7adb3aa53e9a4866fb870e0e134cc23c">setSleep</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>);</div>
<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a2f00f0beec9ad1cd3ddfef565f94571e">getClean</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#af26d421ee293dc206f6184d2384679a9">setClean</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>);</div>
<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#af263405e2f19629f656f0fd6a6ef4777">getLightToggle</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#ad7cd77d7ac518492310939f4941e2252">setLightToggle</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>);</div>
<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160; </div>
<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#ab324ff504365ab1a072442bad7d26ffb">getTurbo</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a0093d31f07a4cd5e5f3b3e57d793ba51">setTurbo</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>);</div>
<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a89600ba551a27a919447e10b77fc2c50">getQuiet</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a1e21efeb4a446ebd03b141f4db668994">setQuiet</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>);</div>
<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#adefc84ea08471e2974231e43f7046a34">getAuxHeating</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#ae3cb8275495ace8153a57e74a09b80cb">setAuxHeating</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>);</div>
<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160; </div>
<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;  uint8_t <a class="code" href="classIRHaierAC160.html#aaa6b7022e1667917389af50d5214367d">getSwingV</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a1d8c1bf7c7e2c42daaf0b7a9c21b9fb9">setSwingV</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160; </div>
<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#ac6469e7a148b26b10e80dce6d4b82d77">setTimerMode</a>(<span class="keyword">const</span> uint8_t setting);</div>
<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;  uint8_t <a class="code" href="classIRHaierAC160.html#aa0ae3113a4eedba04e98982f0513b324">getTimerMode</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#ab642e145cefdbd49a9f739cb096f1be0">setOnTimer</a>(<span class="keyword">const</span> uint16_t mins);</div>
<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;  uint16_t <a class="code" href="classIRHaierAC160.html#ac4f96934f0ae290b52f156f556b064e9">getOnTimer</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a254745ab5b7733b82b3c4a2be98966ef">setOffTimer</a>(<span class="keyword">const</span> uint16_t mins);</div>
<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;  uint16_t <a class="code" href="classIRHaierAC160.html#a2ced03a40410e1a284d65e1f8b1ff8fd">getOffTimer</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160; </div>
<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a8221127c08d5b49fa3f92bf450d988c5">getLock</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a8550bb87407ede915f7b7a303fb2f6a2">setLock</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>);</div>
<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160; </div>
<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a6ce9d4db11e2a92850abd5f2af7de997">getHealth</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#add079004a5ee76f4570fdb4447eec526">setHealth</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">on</a>);</div>
<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160; </div>
<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;  uint8_t* <a class="code" href="classIRHaierAC160.html#a6b596e468edd81954f6a26b1647c6147">getRaw</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a1f6fe09a6721cc5c604fc5bd55c6ed48">setRaw</a>(<span class="keyword">const</span> uint8_t new_code[]);</div>
<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a1bd0a116fb4d5f04f1438a57c9719da9">validChecksum</a>(<span class="keyword">const</span> uint8_t state[],</div>
<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;                            <span class="keyword">const</span> uint16_t length = <a class="code" href="IRremoteESP8266_8h.html#a995fbc320365f7d86dc079774a637089">kHaierAC160StateLength</a>);</div>
<div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRHaierAC160.html#ac2825443e17aa23f5a6e1bf4dbedbd81">convertMode</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> mode);</div>
<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRHaierAC160.html#aed68f80febaf4790abecf9c28c278d49">convertFan</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> speed);</div>
<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRHaierAC160.html#afc07030d433bde9fac6904a3cbc475e6">convertSwingV</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> position);</div>
<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> <a class="code" href="classIRHaierAC160.html#ae0b5c0902c122d067f8401ecd09f901e">toCommonMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> <a class="code" href="classIRHaierAC160.html#ac0bec7ed71bd9c9de68c58d49904350e">toCommonFanSpeed</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> <a class="code" href="classIRHaierAC160.html#a98af4a553e270b94d7067202baffc329">toCommonSwingV</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#a9aa61f90fc98c1f5cdbd80905cd7fde2">toCommonTurbo</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classIRHaierAC160.html#ae95d82bf5105ba9b5f504b6fb1a6f81e">toCommonQuiet</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;  <a class="code" href="structstdAc_1_1state__t.html">stdAc::state_t</a> <a class="code" href="classIRHaierAC160.html#a8bd2391ca335c613057f83fdfa9b0013">toCommon</a>(<span class="keyword">const</span> <a class="code" href="structstdAc_1_1state__t.html">stdAc::state_t</a> *prev = NULL) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;  <a class="code" href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a> <a class="code" href="classIRHaierAC160.html#acbe418119f018552f5efe4f887e37665">toString</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;<span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160; </div>
<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00644"></a><span class="lineno"><a class="line" href="classIRHaierAC160.html#af64736f333b9fcac509042b5ca0a8d11">  644</a></span>&#160;  <a class="code" href="classIRsend.html">IRsend</a> <a class="code" href="classIRHaierAC160.html#af64736f333b9fcac509042b5ca0a8d11">_irsend</a>;  </div>
<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;<span class="preprocessor">#else  // UNIT_TEST</span></div>
<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;  IRsendTest <a class="code" href="classIRHaierAC160.html#af64736f333b9fcac509042b5ca0a8d11">_irsend</a>;  </div>
<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;<span class="preprocessor">#endif  // UNIT_TEST</span></div>
<div class="line"><a name="l00650"></a><span class="lineno"><a class="line" href="classIRHaierAC160.html#a5c6b11a970ce292610c8d76d1e25159f">  650</a></span>&#160;  <a class="code" href="unionHaierAc160Protocol.html">HaierAc160Protocol</a> <a class="code" href="classIRHaierAC160.html#a5c6b11a970ce292610c8d76d1e25159f">_</a>;</div>
<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRHaierAC160.html#a66552fe7c516e881fe3e2ec18fe4d491">checksum</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;};</div>
<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;<span class="preprocessor">#endif  // IR_HAIER_H_</span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="aclassIRHaierAC160_html_af2b7ca52e6cbe9209410b9208ae0e4fd"><div class="ttname"><a href="classIRHaierAC160.html#af2b7ca52e6cbe9209410b9208ae0e4fd">IRHaierAC160::getPower</a></div><div class="ttdeci">bool getPower(void) const</div><div class="ttdoc">Get the value of the current power setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1694</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ab642e145cefdbd49a9f739cb096f1be0"><div class="ttname"><a href="classIRHaierAC160.html#ab642e145cefdbd49a9f739cb096f1be0">IRHaierAC160::setOnTimer</a></div><div class="ttdeci">void setOnTimer(const uint16_t mins)</div><div class="ttdoc">Set the number of minutes of the On Timer setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1856</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a546655c0859e1d275259a82085c37a08"><div class="ttname"><a href="classIRHaierAC160.html#a546655c0859e1d275259a82085c37a08">IRHaierAC160::getUseFahrenheit</a></div><div class="ttdeci">bool getUseFahrenheit(void) const</div><div class="ttdoc">Get the default temperature units in use.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1595</div></div>
<div class="ttc" id="air__Haier_8h_html_afb6ef94635539f1b66decd07079bb2a2"><div class="ttname"><a href="ir__Haier_8h.html#afb6ef94635539f1b66decd07079bb2a2">kHaierAc160ButtonClean</a></div><div class="ttdeci">const uint8_t kHaierAc160ButtonClean</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:199</div></div>
<div class="ttc" id="air__Haier_8h_html_a447818ec7970e2ca09540afe44ecf90d"><div class="ttname"><a href="ir__Haier_8h.html#a447818ec7970e2ca09540afe44ecf90d">kHaierAcCmdFan</a></div><div class="ttdeci">const uint8_t kHaierAcCmdFan</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:82</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a3ed07dbe74048ba28cadbed9cf5bc550"><div class="ttname"><a href="classIRHaierAC176.html#a3ed07dbe74048ba28cadbed9cf5bc550">IRHaierAC176::setButton</a></div><div class="ttdeci">void setButton(const uint8_t button)</div><div class="ttdoc">Set the Button/Command setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:623</div></div>
<div class="ttc" id="air__Haier_8h_html_aa4d9e45ca5777707778ef78a3284da19"><div class="ttname"><a href="ir__Haier_8h.html#aa4d9e45ca5777707778ef78a3284da19">kHaierAcFanHigh</a></div><div class="ttdeci">const uint8_t kHaierAcFanHigh</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:105</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a2fa16f82aec3df48ec6c1ffcc1d1edda"><div class="ttname"><a href="classIRHaierAC176.html#a2fa16f82aec3df48ec6c1ffcc1d1edda">IRHaierAC176::getLock</a></div><div class="ttdeci">bool getLock(void) const</div><div class="ttdoc">Get the Lock setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1020</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_aaa6b7022e1667917389af50d5214367d"><div class="ttname"><a href="classIRHaierAC160.html#aaa6b7022e1667917389af50d5214367d">IRHaierAC160::getSwingV</a></div><div class="ttdeci">uint8_t getSwingV(void) const</div><div class="ttdoc">Get the Vertical Swing position setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1810</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_a62412e221207dbc2660f93dc265b4218"><div class="ttname"><a href="IRremoteESP8266_8h.html#a62412e221207dbc2660f93dc265b4218">kHaierAcYrw02DefaultRepeat</a></div><div class="ttdeci">const uint16_t kHaierAcYrw02DefaultRepeat</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1257</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a0cce16a99658dca3a7f1c5e7e0ccd714"><div class="ttname"><a href="classIRHaierAC176.html#a0cce16a99658dca3a7f1c5e7e0ccd714">IRHaierAC176::begin</a></div><div class="ttdeci">void begin(void)</div><div class="ttdoc">Set up hardware to be able to send a message.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:561</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_a995fbc320365f7d86dc079774a637089"><div class="ttname"><a href="IRremoteESP8266_8h.html#a995fbc320365f7d86dc079774a637089">kHaierAC160StateLength</a></div><div class="ttdeci">const uint16_t kHaierAC160StateLength</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1258</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_af2278990035472822aec048f9ea382bb"><div class="ttname"><a href="unionHaierAc160Protocol.html#af2278990035472822aec048f9ea382bb">HaierAc160Protocol::AuxHeating</a></div><div class="ttdeci">uint8_t AuxHeating</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:298</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a4760af54cbc1618b2dc4c1bf57884ebb"><div class="ttname"><a href="classIRHaierAC.html#a4760af54cbc1618b2dc4c1bf57884ebb">IRHaierAC::getOffTimer</a></div><div class="ttdeci">int16_t getOffTimer(void) const</div><div class="ttdoc">Get the Off Timer value/setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:296</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a864171682700f7e76c6f759d6a867c67"><div class="ttname"><a href="classIRHaierAC160.html#a864171682700f7e76c6f759d6a867c67">IRHaierAC160::on</a></div><div class="ttdeci">void on(void)</div><div class="ttdoc">Change the power setting to On.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1704</div></div>
<div class="ttc" id="air__Haier_8h_html_a6f828d385034c4b8c3089248714822de"><div class="ttname"><a href="ir__Haier_8h.html#a6f828d385034c4b8c3089248714822de">kHaierAcSwingVUp</a></div><div class="ttdeci">const uint8_t kHaierAcSwingVUp</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:92</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a2ddf59c6ce732c23a9898dfc6679be02"><div class="ttname"><a href="classIRHaierAC.html#a2ddf59c6ce732c23a9898dfc6679be02">IRHaierAC::getMode</a></div><div class="ttdeci">uint8_t getMode(void) const</div><div class="ttdoc">Get the operating mode setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:230</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_afc07030d433bde9fac6904a3cbc475e6"><div class="ttname"><a href="classIRHaierAC160.html#afc07030d433bde9fac6904a3cbc475e6">IRHaierAC160::convertSwingV</a></div><div class="ttdeci">static uint8_t convertSwingV(const stdAc::swingv_t position)</div><div class="ttdoc">Convert a stdAc::swingv_t enum into it's native setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1955</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_afcfa13804fd456b39b4459f7d05d0a92"><div class="ttname"><a href="classIRHaierAC176.html#afcfa13804fd456b39b4459f7d05d0a92">IRHaierAC176::getOffTimer</a></div><div class="ttdeci">uint16_t getOffTimer(void) const</div><div class="ttdoc">Get the number of minutes of the Off Timer setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1014</div></div>
<div class="ttc" id="air__Haier_8h_html_a35f50f043a2dda75c59507c1ed845b5d"><div class="ttname"><a href="ir__Haier_8h.html#a35f50f043a2dda75c59507c1ed845b5d">kHaierAcYrw02Fan</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02Fan</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:183</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_aed62fe9bfe0f3857312ed3ec4d4f1968"><div class="ttname"><a href="unionHaierAc176Protocol.html#aed62fe9bfe0f3857312ed3ec4d4f1968">HaierAc176Protocol::Sleep</a></div><div class="ttdeci">uint8_t Sleep</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:242</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_a882914932449e33933b6f8e224cbaf3c"><div class="ttname"><a href="IRremoteESP8266_8h.html#a882914932449e33933b6f8e224cbaf3c">kHaierAcDefaultRepeat</a></div><div class="ttdeci">const uint16_t kHaierAcDefaultRepeat</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1254</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a2467b11e1819c2e6eeb7e9b488f22dee"><div class="ttname"><a href="unionHaierAc176Protocol.html#a2467b11e1819c2e6eeb7e9b488f22dee">HaierAc176Protocol::raw</a></div><div class="ttdeci">uint8_t raw[kHaierAC176StateLength]</div><div class="ttdoc">The state in native form.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:210</div></div>
<div class="ttc" id="air__Haier_8h_html_a65583649324c6039112e7db26d685afc"><div class="ttname"><a href="ir__Haier_8h.html#a65583649324c6039112e7db26d685afc">kHaierAcYrw02FanMed</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02FanMed</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:175</div></div>
<div class="ttc" id="air__Haier_8h_html_af04e8cba561b9d03969ce95fd3013b59"><div class="ttname"><a href="ir__Haier_8h.html#af04e8cba561b9d03969ce95fd3013b59">kHaierAcYrw02SwingVTop</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingVTop</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:152</div></div>
<div class="ttc" id="air__Haier_8h_html_ac33a02f63ee77e0d3050598511730865"><div class="ttname"><a href="ir__Haier_8h.html#ac33a02f63ee77e0d3050598511730865">kHaierAcAuto</a></div><div class="ttdeci">const uint8_t kHaierAcAuto</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:96</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a1d8c1bf7c7e2c42daaf0b7a9c21b9fb9"><div class="ttname"><a href="classIRHaierAC160.html#a1d8c1bf7c7e2c42daaf0b7a9c21b9fb9">IRHaierAC160::setSwingV</a></div><div class="ttdeci">void setSwingV(const uint8_t pos)</div><div class="ttdoc">Set the Vertical Swing mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1814</div></div>
<div class="ttc" id="air__Haier_8h_html_ad80547c526b2eba142297715c0a0636d"><div class="ttname"><a href="ir__Haier_8h.html#ad80547c526b2eba142297715c0a0636d">kHaierAcYrw02ButtonTurbo</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonTurbo</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:193</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a0bb91955566e92d153f34a1d2bb378bd"><div class="ttname"><a href="unionHaierAc176Protocol.html#a0bb91955566e92d153f34a1d2bb378bd">HaierAc176Protocol::Quiet</a></div><div class="ttdeci">uint8_t Quiet</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:235</div></div>
<div class="ttc" id="aclassIRHaierACYRW02_html_a2081b29d0526e339a6b94fc41c854197"><div class="ttname"><a href="classIRHaierACYRW02.html#a2081b29d0526e339a6b94fc41c854197">IRHaierACYRW02::calibrate</a></div><div class="ttdeci">int8_t calibrate(void)</div><div class="ttdoc">Run the calibration to calculate uSec timing offsets for this platform.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:554</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a8bd2391ca335c613057f83fdfa9b0013"><div class="ttname"><a href="classIRHaierAC160.html#a8bd2391ca335c613057f83fdfa9b0013">IRHaierAC160::toCommon</a></div><div class="ttdeci">stdAc::state_t toCommon(const stdAc::state_t *prev=NULL) const</div><div class="ttdoc">Convert the current internal state into its stdAc::state_t equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:2011</div></div>
<div class="ttc" id="anamespacestdAc_html_ac07f224c7bb47cac55dd01f24770ef43"><div class="ttname"><a href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a></div><div class="ttdeci">swingv_t</div><div class="ttdoc">Common A/C settings for Vertical Swing.</div><div class="ttdef"><b>Definition:</b> IRsend.h:74</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_acb1d3109465ce8bdcc906f0ca38616e2"><div class="ttname"><a href="classIRHaierAC176.html#acb1d3109465ce8bdcc906f0ca38616e2">IRHaierAC176::validChecksum</a></div><div class="ttdeci">static bool validChecksum(const uint8_t state[], const uint16_t length=kHaierAC176StateLength)</div><div class="ttdoc">Verify the checksum is valid for a given state.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:582</div></div>
<div class="ttc" id="air__Haier_8h_html_a9df47b9b9d72c6f30fc9f4aa96610dd0"><div class="ttname"><a href="ir__Haier_8h.html#a9df47b9b9d72c6f30fc9f4aa96610dd0">kHaierAcYrw02OnTimer</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02OnTimer</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:204</div></div>
<div class="ttc" id="air__Haier_8h_html_a31247c83284fb820749b230c1fe493db"><div class="ttname"><a href="ir__Haier_8h.html#a31247c83284fb820749b230c1fe493db">kHaierAcYrw02OffThenOnTimer</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02OffThenOnTimer</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:206</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_afb4cd0c1a9c689d862e7095f0ab6dbe5"><div class="ttname"><a href="IRremoteESP8266_8h.html#afb4cd0c1a9c689d862e7095f0ab6dbe5">kHaierACStateLength</a></div><div class="ttdeci">const uint16_t kHaierACStateLength</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1252</div></div>
<div class="ttc" id="aclassIRHaierACYRW02_html_ad247247ed5cddddedf5ff31e7c7afbeb"><div class="ttname"><a href="classIRHaierACYRW02.html#ad247247ed5cddddedf5ff31e7c7afbeb">IRHaierACYRW02::validChecksum</a></div><div class="ttdeci">static bool validChecksum(const uint8_t state[], const uint16_t length=kHaierACYRW02StateLength)</div><div class="ttdoc">Verify the checksum is valid for a given state.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1333</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_aeef2163538075c41282c7e26e8364f6a"><div class="ttname"><a href="classIRHaierAC176.html#aeef2163538075c41282c7e26e8364f6a">IRHaierAC176::getSwingV</a></div><div class="ttdeci">uint8_t getSwingV(void) const</div><div class="ttdoc">Get the Vertical Swing position setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:891</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_aca0255b239860dc34e1ff401758dd639"><div class="ttname"><a href="classIRHaierAC160.html#aca0255b239860dc34e1ff401758dd639">IRHaierAC160::calibrate</a></div><div class="ttdeci">int8_t calibrate(void)</div><div class="ttdoc">Run the calibration to calculate uSec timing offsets for this platform.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:573</div></div>
<div class="ttc" id="air__Haier_8h_html_aecc31139b4e45a7784669554c6fdbb54"><div class="ttname"><a href="ir__Haier_8h.html#aecc31139b4e45a7784669554c6fdbb54">kHaierAcCmdTempDown</a></div><div class="ttdeci">const uint8_t kHaierAcCmdTempDown</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:84</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a152961e20b5a5bed2ea03cbc65d65ce9"><div class="ttname"><a href="classIRHaierAC.html#a152961e20b5a5bed2ea03cbc65d65ce9">IRHaierAC::setRaw</a></div><div class="ttdeci">void setRaw(const uint8_t new_code[])</div><div class="ttdoc">Set the internal state from a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:162</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a349e0de16a9edf4dac3e2872dab87928"><div class="ttname"><a href="unionHaierAc160Protocol.html#a349e0de16a9edf4dac3e2872dab87928">HaierAc160Protocol::Mode</a></div><div class="ttdeci">uint8_t Mode</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:308</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a62fbae1d2bac01ac3a2194274aa839d9"><div class="ttname"><a href="classIRHaierAC.html#a62fbae1d2bac01ac3a2194274aa839d9">IRHaierAC::stateReset</a></div><div class="ttdeci">void stateReset(void)</div><div class="ttdoc">Reset the internal state to a fixed known good state.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:143</div></div>
<div class="ttc" id="air__Haier_8h_html_a4543aa4ee28323bb9cb5c077f9bf9da1"><div class="ttname"><a href="ir__Haier_8h.html#a4543aa4ee28323bb9cb5c077f9bf9da1">kHaierAcCmdMode</a></div><div class="ttdeci">const uint8_t kHaierAcCmdMode</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:81</div></div>
<div class="ttc" id="anamespacestdAc_html_a8bb0dbf18fe69f639f4ac0b3ff133383"><div class="ttname"><a href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a></div><div class="ttdeci">fanspeed_t</div><div class="ttdoc">Common A/C settings for Fan Speeds.</div><div class="ttdef"><b>Definition:</b> IRsend.h:61</div></div>
<div class="ttc" id="air__Haier_8h_html_ab1dc6c0a4ed59446bb69c4dd671c78cd"><div class="ttname"><a href="ir__Haier_8h.html#ab1dc6c0a4ed59446bb69c4dd671c78cd">kHaierAcYrw02ButtonHealth</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonHealth</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:192</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a7a981ef3f3ec1f3378cd7dc5de0195a3"><div class="ttname"><a href="classIRHaierAC160.html#a7a981ef3f3ec1f3378cd7dc5de0195a3">IRHaierAC160::off</a></div><div class="ttdeci">void off(void)</div><div class="ttdoc">Change the power setting to Off.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1707</div></div>
<div class="ttc" id="air__Haier_8h_html_a653c6b51a20515cb6e9ce2b4e0fc71df"><div class="ttname"><a href="ir__Haier_8h.html#a653c6b51a20515cb6e9ce2b4e0fc71df">kHaierAcYrw02SwingHMiddle</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingHMiddle</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:167</div></div>
<div class="ttc" id="aclassIRHaierAC_html_ace3a6ad8816dbf5d4a9f8595cc621b09"><div class="ttname"><a href="classIRHaierAC.html#ace3a6ad8816dbf5d4a9f8595cc621b09">IRHaierAC::getCurrTime</a></div><div class="ttdeci">uint16_t getCurrTime(void) const</div><div class="ttdoc">Get the clock value of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:306</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a1e21efeb4a446ebd03b141f4db668994"><div class="ttname"><a href="classIRHaierAC160.html#a1e21efeb4a446ebd03b141f4db668994">IRHaierAC160::setQuiet</a></div><div class="ttdeci">void setQuiet(const bool on)</div><div class="ttdoc">Set the Quiet setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1744</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a42ee1c5889f07bf7615c8f853bca2261"><div class="ttname"><a href="classIRHaierAC.html#a42ee1c5889f07bf7615c8f853bca2261">IRHaierAC::setFan</a></div><div class="ttdeci">void setFan(const uint8_t speed)</div><div class="ttdoc">Set the speed of the fan.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:193</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a697835a6fb7157fef7a3831268f75484"><div class="ttname"><a href="unionHaierAc176Protocol.html#a697835a6fb7157fef7a3831268f75484">HaierAc176Protocol::Fan</a></div><div class="ttdeci">uint8_t Fan</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:231</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_ae56f7194610e4560622e08219319daee"><div class="ttname"><a href="classIRHaierAC176.html#ae56f7194610e4560622e08219319daee">IRHaierAC176::on</a></div><div class="ttdeci">void on(void)</div><div class="ttdoc">Change the power setting to On.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:809</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_aa6a300a1167a442bb44c585d2d5c1507"><div class="ttname"><a href="classIRHaierAC176.html#aa6a300a1167a442bb44c585d2d5c1507">IRHaierAC176::getTurbo</a></div><div class="ttdeci">bool getTurbo(void) const</div><div class="ttdoc">Get the Turbo setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:827</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a57106aaab1e6506d281d0d0fb26e142e"><div class="ttname"><a href="unionHaierAc176Protocol.html#a57106aaab1e6506d281d0d0fb26e142e">HaierAc176Protocol::Mode</a></div><div class="ttdeci">uint8_t Mode</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:238</div></div>
<div class="ttc" id="air__Haier_8h_html_abe52b62dd513395f2a8c7d47fa2fc514"><div class="ttname"><a href="ir__Haier_8h.html#abe52b62dd513395f2a8c7d47fa2fc514">kHaierAcCmdSleep</a></div><div class="ttdeci">const uint8_t kHaierAcCmdSleep</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:85</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a11e68d6a4bd6ff6014bec2b003da8526"><div class="ttname"><a href="classIRHaierAC160.html#a11e68d6a4bd6ff6014bec2b003da8526">IRHaierAC160::stateReset</a></div><div class="ttdeci">void stateReset(void)</div><div class="ttdoc">Reset the internal state to a fixed known good state.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1513</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a870541d6cc7baae68d9d8dc579eea1f7"><div class="ttname"><a href="classIRHaierAC176.html#a870541d6cc7baae68d9d8dc579eea1f7">IRHaierAC176::setMode</a></div><div class="ttdeci">void setMode(const uint8_t mode)</div><div class="ttdoc">Set the operating mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:671</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a58628dd19a7247fc5358c0dc8c30baba"><div class="ttname"><a href="classIRHaierAC.html#a58628dd19a7247fc5358c0dc8c30baba">IRHaierAC::convertFan</a></div><div class="ttdeci">static uint8_t convertFan(const stdAc::fanspeed_t speed)</div><div class="ttdoc">Convert a stdAc::fanspeed_t enum into it's native speed.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:376</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_aa0ae3113a4eedba04e98982f0513b324"><div class="ttname"><a href="classIRHaierAC160.html#aa0ae3113a4eedba04e98982f0513b324">IRHaierAC160::getTimerMode</a></div><div class="ttdeci">uint8_t getTimerMode(void) const</div><div class="ttdoc">Get the Timer operating mode.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1852</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_aa88d3fca0537b7f263513d3bcd581a05"><div class="ttname"><a href="unionHaierAc176Protocol.html#aa88d3fca0537b7f263513d3bcd581a05">HaierAc176Protocol::OffTimerHrs</a></div><div class="ttdeci">uint8_t OffTimerHrs</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:230</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_a98033047ba27af810bb90fe33169cef2"><div class="ttname"><a href="IRremoteESP8266_8h.html#a98033047ba27af810bb90fe33169cef2">kHaierAC176StateLength</a></div><div class="ttdeci">const uint16_t kHaierAC176StateLength</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1261</div></div>
<div class="ttc" id="aunionHaierProtocol_html_a6c15a8e22231dae23ffa8bef78420054"><div class="ttname"><a href="unionHaierProtocol.html#a6c15a8e22231dae23ffa8bef78420054">HaierProtocol::Prefix</a></div><div class="ttdeci">uint8_t Prefix</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:41</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ac4f96934f0ae290b52f156f556b064e9"><div class="ttname"><a href="classIRHaierAC160.html#ac4f96934f0ae290b52f156f556b064e9">IRHaierAC160::getOnTimer</a></div><div class="ttdeci">uint16_t getOnTimer(void) const</div><div class="ttdoc">Get the number of minutes of the On Timer setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1880</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_aaf9d46dff8b88a644b13dd9921c2e779"><div class="ttname"><a href="classIRHaierAC176.html#aaf9d46dff8b88a644b13dd9921c2e779">IRHaierAC176::getOnTimer</a></div><div class="ttdeci">uint16_t getOnTimer(void) const</div><div class="ttdoc">Get the number of minutes of the On Timer setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:984</div></div>
<div class="ttc" id="aclassIRHaierAC_html_aa6f23534e63039527bf92fc85fed2e2c"><div class="ttname"><a href="classIRHaierAC.html#aa6f23534e63039527bf92fc85fed2e2c">IRHaierAC::getTemp</a></div><div class="ttdeci">uint8_t getTemp(void) const</div><div class="ttdoc">Get the current temperature setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:254</div></div>
<div class="ttc" id="aunionHaierProtocol_html_affb6ef60b50ae3351393e3f168ae8f2f"><div class="ttname"><a href="unionHaierProtocol.html#affb6ef60b50ae3351393e3f168ae8f2f">HaierProtocol::Temp</a></div><div class="ttdeci">uint8_t Temp</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:44</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a20efaa79ca7ead0b08f19a4b41c198aa"><div class="ttname"><a href="classIRHaierAC.html#a20efaa79ca7ead0b08f19a4b41c198aa">IRHaierAC::getFan</a></div><div class="ttdeci">uint8_t getFan(void) const</div><div class="ttdoc">Get the current fan speed setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:209</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_af5e2b7618d27e479460096573f7f5001"><div class="ttname"><a href="unionHaierAc160Protocol.html#af5e2b7618d27e479460096573f7f5001">HaierAc160Protocol::Prefix</a></div><div class="ttdeci">uint8_t Prefix</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:330</div></div>
<div class="ttc" id="aunionHaierProtocol_html_ae5c9fd1397bcf3c6737c38d8e76682b1"><div class="ttname"><a href="unionHaierProtocol.html#ae5c9fd1397bcf3c6737c38d8e76682b1">HaierProtocol::OnTimer</a></div><div class="ttdeci">uint8_t OnTimer</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:52</div></div>
<div class="ttc" id="air__Haier_8h_html_aa025eeba1c344c50cc98334c97a3c174"><div class="ttname"><a href="ir__Haier_8h.html#aa025eeba1c344c50cc98334c97a3c174">kHaierAcYrw02Auto</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02Auto</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:179</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a4b103da7d3c2095e86d1df0e7f2e7925"><div class="ttname"><a href="unionHaierAc176Protocol.html#a4b103da7d3c2095e86d1df0e7f2e7925">HaierAc176Protocol::ExtraDegreeF</a></div><div class="ttdeci">uint8_t ExtraDegreeF</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:246</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a7f28698aa8e740c76493a9fd9cbba700"><div class="ttname"><a href="classIRHaierAC176.html#a7f28698aa8e740c76493a9fd9cbba700">IRHaierAC176::_</a></div><div class="ttdeci">HaierAc176Protocol _</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:539</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_ae1d8d0ea08f8d5c18624f76f45e49a69"><div class="ttname"><a href="unionHaierAc160Protocol.html#ae1d8d0ea08f8d5c18624f76f45e49a69">HaierAc160Protocol::Health</a></div><div class="ttdeci">uint8_t Health</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:292</div></div>
<div class="ttc" id="aclassIRHaierAC_html_abf72eed86c2c86c4f0f5f49f6a788b82"><div class="ttname"><a href="classIRHaierAC.html#abf72eed86c2c86c4f0f5f49f6a788b82">IRHaierAC::getRaw</a></div><div class="ttdeci">uint8_t * getRaw(void)</div><div class="ttdoc">Get a PTR to the internal state/code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:155</div></div>
<div class="ttc" id="air__Haier_8h_html_afab164c2aabf39fdc1e956ff88af19d9"><div class="ttname"><a href="ir__Haier_8h.html#afab164c2aabf39fdc1e956ff88af19d9">kHaierAcCmdSwing</a></div><div class="ttdeci">const uint8_t kHaierAcCmdSwing</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:89</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a89600ba551a27a919447e10b77fc2c50"><div class="ttname"><a href="classIRHaierAC160.html#a89600ba551a27a919447e10b77fc2c50">IRHaierAC160::getQuiet</a></div><div class="ttdeci">bool getQuiet(void) const</div><div class="ttdoc">Get the Quiet setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1739</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_aa792830104726eb2b9aa95477763aa20"><div class="ttname"><a href="classIRHaierAC176.html#aa792830104726eb2b9aa95477763aa20">IRHaierAC176::off</a></div><div class="ttdeci">void off(void)</div><div class="ttdoc">Change the power setting to Off.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:812</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a28594414eaac661df4d4d7dcdbacf217"><div class="ttname"><a href="classIRHaierAC176.html#a28594414eaac661df4d4d7dcdbacf217">IRHaierAC176::getRaw</a></div><div class="ttdeci">uint8_t * getRaw(void)</div><div class="ttdoc">Get a PTR to the internal state/code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:610</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_adae0a3d5396631226c1df878f3615f4d"><div class="ttname"><a href="classIRHaierAC176.html#adae0a3d5396631226c1df878f3615f4d">IRHaierAC176::getUseFahrenheit</a></div><div class="ttdeci">bool getUseFahrenheit(void) const</div><div class="ttdoc">Get the default temperature units in use.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:701</div></div>
<div class="ttc" id="air__Haier_8h_html_a6a7e96254910bdd7d1625a66d370bb56"><div class="ttname"><a href="ir__Haier_8h.html#a6a7e96254910bdd7d1625a66d370bb56">kHaierAcSwingVChg</a></div><div class="ttdeci">const uint8_t kHaierAcSwingVChg</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:94</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a94b69a66ba7aa5e0ffa1c4d711adac4a"><div class="ttname"><a href="classIRHaierAC176.html#a94b69a66ba7aa5e0ffa1c4d711adac4a">IRHaierAC176::setTimerMode</a></div><div class="ttdeci">void setTimerMode(const uint8_t setting)</div><div class="ttdoc">Set the Timer operating mode.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:937</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_ac3eea0d8f62917921e0696e3de17c4e6"><div class="ttname"><a href="classIRHaierAC176.html#ac3eea0d8f62917921e0696e3de17c4e6">IRHaierAC176::setSleep</a></div><div class="ttdeci">void setSleep(const bool on)</div><div class="ttdoc">Set the Sleep setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:820</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a75328b0d918e23f2561437321347e909"><div class="ttname"><a href="classIRHaierAC176.html#a75328b0d918e23f2561437321347e909">IRHaierAC176::toCommonTurbo</a></div><div class="ttdeci">static bool toCommonTurbo(const uint8_t speed)</div></div>
<div class="ttc" id="aclassIRHaierAC_html_acb72b89fa53b565f9d32db4d8960f988"><div class="ttname"><a href="classIRHaierAC.html#acb72b89fa53b565f9d32db4d8960f988">IRHaierAC::setSleep</a></div><div class="ttdeci">void setSleep(const bool on)</div><div class="ttdoc">Set the Sleep setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:273</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a988c758fa00501b7111e93e7e380aae4"><div class="ttname"><a href="classIRHaierAC176.html#a988c758fa00501b7111e93e7e380aae4">IRHaierAC176::getSwingH</a></div><div class="ttdeci">uint8_t getSwingH(void) const</div><div class="ttdoc">Get the Horizontal Swing position setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:917</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_ae6fc8a3243acc62568d383120f64c124"><div class="ttname"><a href="unionHaierAc176Protocol.html#ae6fc8a3243acc62568d383120f64c124">HaierAc176Protocol::Power</a></div><div class="ttdeci">uint8_t Power</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:227</div></div>
<div class="ttc" id="aunionHaierProtocol_html_a70abde8bccafd39cf1a1506f63481893"><div class="ttname"><a href="unionHaierProtocol.html#a70abde8bccafd39cf1a1506f63481893">HaierProtocol::CurrMins</a></div><div class="ttdeci">uint8_t CurrMins</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:50</div></div>
<div class="ttc" id="air__Haier_8h_html_aaefcc9aea55434b0a31e30ea20f2a41a"><div class="ttname"><a href="ir__Haier_8h.html#aaefcc9aea55434b0a31e30ea20f2a41a">kHaierAcYrw02DefTempC</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02DefTempC</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:144</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a5fca07a343939b63403de8bfd42cd97a"><div class="ttname"><a href="unionHaierAc176Protocol.html#a5fca07a343939b63403de8bfd42cd97a">HaierAc176Protocol::Prefix2</a></div><div class="ttdeci">uint8_t Prefix2</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:259</div></div>
<div class="ttc" id="aIRsend_8h_html"><div class="ttname"><a href="IRsend_8h.html">IRsend.h</a></div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a2fcfe456d182bd6a0cae1671adfed7f8"><div class="ttname"><a href="classIRHaierAC176.html#a2fcfe456d182bd6a0cae1671adfed7f8">IRHaierAC176::setUseFahrenheit</a></div><div class="ttdeci">void setUseFahrenheit(const bool on)</div><div class="ttdoc">Set the default temperature units to use.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:697</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a00ffd726b01b31f8d5b9f28b00385055"><div class="ttname"><a href="classIRHaierAC176.html#a00ffd726b01b31f8d5b9f28b00385055">IRHaierAC176::calibrate</a></div><div class="ttdeci">int8_t calibrate(void)</div><div class="ttdoc">Run the calibration to calculate uSec timing offsets for this platform.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:457</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_abe1f05159b39a9bdb35ae56d8589fb8f"><div class="ttname"><a href="classIRHaierAC176.html#abe1f05159b39a9bdb35ae56d8589fb8f">IRHaierAC176::setTemp</a></div><div class="ttdeci">void setTemp(const uint8_t temp, const bool fahrenheit=false)</div><div class="ttdoc">Set the temperature.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:706</div></div>
<div class="ttc" id="aunionHaierProtocol_html_aab10d402084329d472e08385cc9645ec"><div class="ttname"><a href="unionHaierProtocol.html#aab10d402084329d472e08385cc9645ec">HaierProtocol::Mode</a></div><div class="ttdeci">uint8_t Mode</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:62</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_ab5b8de8073524311a8a2514dfa5c2077"><div class="ttname"><a href="classIRHaierAC176.html#ab5b8de8073524311a8a2514dfa5c2077">IRHaierAC176::setLock</a></div><div class="ttdeci">void setLock(const bool on)</div><div class="ttdoc">Set the Lock setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1024</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a0b83d5a1fc9339569dccd43dd59aa275"><div class="ttname"><a href="classIRHaierAC176.html#a0b83d5a1fc9339569dccd43dd59aa275">IRHaierAC176::toString</a></div><div class="ttdeci">String toString(void) const</div><div class="ttdoc">Convert the current internal state into a human readable string.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1168</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a8221127c08d5b49fa3f92bf450d988c5"><div class="ttname"><a href="classIRHaierAC160.html#a8221127c08d5b49fa3f92bf450d988c5">IRHaierAC160::getLock</a></div><div class="ttdeci">bool getLock(void) const</div><div class="ttdoc">Get the Lock setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1916</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a9aa61f90fc98c1f5cdbd80905cd7fde2"><div class="ttname"><a href="classIRHaierAC160.html#a9aa61f90fc98c1f5cdbd80905cd7fde2">IRHaierAC160::toCommonTurbo</a></div><div class="ttdeci">static bool toCommonTurbo(const uint8_t speed)</div></div>
<div class="ttc" id="air__Haier_8h_html_a8dfaa51fab56a3d8c5d010e450d5e0e0"><div class="ttname"><a href="ir__Haier_8h.html#a8dfaa51fab56a3d8c5d010e450d5e0e0">kHaierAcYrw02SwingVMiddle</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingVMiddle</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:153</div></div>
<div class="ttc" id="air__Haier_8h_html_ad422f9dd03af1504f5b8e441c190c9f9"><div class="ttname"><a href="ir__Haier_8h.html#ad422f9dd03af1504f5b8e441c190c9f9">kHaierAcYrw02SwingVBottom</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingVBottom</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:154</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a6b596e468edd81954f6a26b1647c6147"><div class="ttname"><a href="classIRHaierAC160.html#a6b596e468edd81954f6a26b1647c6147">IRHaierAC160::getRaw</a></div><div class="ttdeci">uint8_t * getRaw(void)</div><div class="ttdoc">Get a PTR to the internal state/code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1526</div></div>
<div class="ttc" id="aclassIRHaierAC_html_ab6c92a20d85d7b92b2e3a07f471caad2"><div class="ttname"><a href="classIRHaierAC.html#ab6c92a20d85d7b92b2e3a07f471caad2">IRHaierAC::setSwingV</a></div><div class="ttdeci">void setSwingV(const uint8_t state)</div><div class="ttdoc">Set the Vertical Swing mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:347</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a379a1c72ffd1245a196cd734346e75a5"><div class="ttname"><a href="classIRHaierAC176.html#a379a1c72ffd1245a196cd734346e75a5">IRHaierAC176::toCommonSwingV</a></div><div class="ttdeci">static stdAc::swingv_t toCommonSwingV(const uint8_t pos)</div><div class="ttdoc">Convert a stdAc::swingv_t enum into it's native setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1114</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a0093d31f07a4cd5e5f3b3e57d793ba51"><div class="ttname"><a href="classIRHaierAC160.html#a0093d31f07a4cd5e5f3b3e57d793ba51">IRHaierAC160::setTurbo</a></div><div class="ttdeci">void setTurbo(const bool on)</div><div class="ttdoc">Set the Turbo setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1727</div></div>
<div class="ttc" id="aclassIRHaierAC_html_af52b438cc7c6b0600793a0eb3c8f6419"><div class="ttname"><a href="classIRHaierAC.html#af52b438cc7c6b0600793a0eb3c8f6419">IRHaierAC::toString</a></div><div class="ttdeci">String toString(void) const</div><div class="ttdoc">Convert the current internal state into a human readable string.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:468</div></div>
<div class="ttc" id="air__Haier_8h_html_a9bd7c081d460a4ae5e3eac977f3916e4"><div class="ttname"><a href="ir__Haier_8h.html#a9bd7c081d460a4ae5e3eac977f3916e4">kHaierAcCmdTimerSet</a></div><div class="ttdeci">const uint8_t kHaierAcCmdTimerSet</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:86</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a3ad0317f2fd4f57d8ce61353ab3e48c7"><div class="ttname"><a href="classIRHaierAC.html#a3ad0317f2fd4f57d8ce61353ab3e48c7">IRHaierAC::setMode</a></div><div class="ttdeci">void setMode(const uint8_t mode)</div><div class="ttdoc">Set the operating mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:220</div></div>
<div class="ttc" id="air__Haier_8h_html_aab5363f07920971c31d6acf8e70d392c"><div class="ttname"><a href="ir__Haier_8h.html#aab5363f07920971c31d6acf8e70d392c">kHaierAcCmdTempUp</a></div><div class="ttdeci">const uint8_t kHaierAcCmdTempUp</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:83</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a1cccc733f74232751f95c32e47795638"><div class="ttname"><a href="classIRHaierAC.html#a1cccc733f74232751f95c32e47795638">IRHaierAC::cancelTimers</a></div><div class="ttdeci">void cancelTimers(void)</div><div class="ttdoc">Cancel/disable the On &amp; Off timers.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:327</div></div>
<div class="ttc" id="air__Haier_8h_html_aee53abc217ebadccdf353c570846a603"><div class="ttname"><a href="ir__Haier_8h.html#aee53abc217ebadccdf353c570846a603">kHaierAc160Prefix</a></div><div class="ttdeci">const uint8_t kHaierAc160Prefix</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:149</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a2a76e7495e33057e404562914b9c76e8"><div class="ttname"><a href="unionHaierAc160Protocol.html#a2a76e7495e33057e404562914b9c76e8">HaierAc160Protocol::Sum</a></div><div class="ttdeci">uint8_t Sum</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:328</div></div>
<div class="ttc" id="air__Haier_8h_html_a07f68dc62e1315ea7dcdcc33f15d813b"><div class="ttname"><a href="ir__Haier_8h.html#a07f68dc62e1315ea7dcdcc33f15d813b">kHaierAc160ButtonLight</a></div><div class="ttdeci">const uint8_t kHaierAc160ButtonLight</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:197</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a85bf6870252fd840298177d9af6b0eae"><div class="ttname"><a href="unionHaierAc160Protocol.html#a85bf6870252fd840298177d9af6b0eae">HaierAc160Protocol::OffTimerHrs</a></div><div class="ttdeci">uint8_t OffTimerHrs</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:300</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html"><div class="ttname"><a href="unionHaierAc160Protocol.html">HaierAc160Protocol</a></div><div class="ttdoc">Native representation of a Haier 160 bit A/C message.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:279</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a1f6fe09a6721cc5c604fc5bd55c6ed48"><div class="ttname"><a href="classIRHaierAC160.html#a1f6fe09a6721cc5c604fc5bd55c6ed48">IRHaierAC160::setRaw</a></div><div class="ttdeci">virtual void setRaw(const uint8_t new_code[])</div><div class="ttdoc">Set the internal state from a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1533</div></div>
<div class="ttc" id="aclassIRsend_html"><div class="ttname"><a href="classIRsend.html">IRsend</a></div><div class="ttdoc">Class for sending all basic IR protocols.</div><div class="ttdef"><b>Definition:</b> IRsend.h:237</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_ae6e9f9187d2b3ed39a6b914cfc2e5c3a"><div class="ttname"><a href="classIRHaierAC176.html#ae6e9f9187d2b3ed39a6b914cfc2e5c3a">IRHaierAC176::getSleep</a></div><div class="ttdeci">bool getSleep(void) const</div><div class="ttdoc">Get the Sleep setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:816</div></div>
<div class="ttc" id="aclassIRHaierAC_html_aec69643fe633a57d635754690225fdd1"><div class="ttname"><a href="classIRHaierAC.html#aec69643fe633a57d635754690225fdd1">IRHaierAC::_irsend</a></div><div class="ttdeci">IRsend _irsend</div><div class="ttdoc">Instance of the IR send class.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:435</div></div>
<div class="ttc" id="aclassIRHaierAC_html_af6188dbed5cae022b4fd1eef358f594c"><div class="ttname"><a href="classIRHaierAC.html#af6188dbed5cae022b4fd1eef358f594c">IRHaierAC::convertMode</a></div><div class="ttdeci">static uint8_t convertMode(const stdAc::opmode_t mode)</div><div class="ttdoc">Convert a stdAc::opmode_t enum into its native mode.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:363</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_aaea41bb190eeb0a44c83c03c3d122d61"><div class="ttname"><a href="classIRHaierAC176.html#aaea41bb190eeb0a44c83c03c3d122d61">IRHaierAC176::checksum</a></div><div class="ttdeci">void checksum(void)</div><div class="ttdoc">Calculate and set the checksum values for the internal state.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:572</div></div>
<div class="ttc" id="aclassIRsend_html_ad1776aa6c699f9eeca1eef9bb4fe355b"><div class="ttname"><a href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">IRsend::calibrate</a></div><div class="ttdeci">int8_t calibrate(uint16_t hz=38000U)</div><div class="ttdoc">Calculate &amp; set any offsets to account for execution times during sending.</div><div class="ttdef"><b>Definition:</b> IRsend.cpp:207</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_ab9b07821d6f32e8adf9294d62987c4a2"><div class="ttname"><a href="classIRHaierAC176.html#ab9b07821d6f32e8adf9294d62987c4a2">IRHaierAC176::getPower</a></div><div class="ttdeci">bool getPower(void) const</div><div class="ttdoc">Get the value of the current power setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:799</div></div>
<div class="ttc" id="air__Haier_8h_html_ae31e878b09284a6730a11e2017cfd7a8"><div class="ttname"><a href="ir__Haier_8h.html#ae31e878b09284a6730a11e2017cfd7a8">kHaierAcFanLow</a></div><div class="ttdeci">const uint8_t kHaierAcFanLow</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:103</div></div>
<div class="ttc" id="air__Haier_8h_html_ae7e1429d1574f88e03589005ae221c15"><div class="ttname"><a href="ir__Haier_8h.html#ae7e1429d1574f88e03589005ae221c15">kHaierAcYrw02OffTimer</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02OffTimer</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:203</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a4f926b239d721cf2dce3d2aee703c1d0"><div class="ttname"><a href="classIRHaierAC176.html#a4f926b239d721cf2dce3d2aee703c1d0">IRHaierAC176::setTurbo</a></div><div class="ttdeci">void setTurbo(const bool on)</div><div class="ttdoc">Set the Turbo setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:832</div></div>
<div class="ttc" id="air__Haier_8h_html_ad51db48288228061ce0f3404dd8f4001"><div class="ttname"><a href="ir__Haier_8h.html#ad51db48288228061ce0f3404dd8f4001">kHaierAcYrw02SwingHRightMax</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingHRightMax</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:171</div></div>
<div class="ttc" id="aunionHaierProtocol_html_afe05b4d562ec2f4990a5b26eaa96111f"><div class="ttname"><a href="unionHaierProtocol.html#afe05b4d562ec2f4990a5b26eaa96111f">HaierProtocol::SwingV</a></div><div class="ttdeci">uint8_t SwingV</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:48</div></div>
<div class="ttc" id="air__Haier_8h_html_a87fd6a1834c5a78a36658722f62a9a88"><div class="ttname"><a href="ir__Haier_8h.html#a87fd6a1834c5a78a36658722f62a9a88">kHaierAc160SwingVHighest</a></div><div class="ttdeci">const uint8_t kHaierAc160SwingVHighest</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:160</div></div>
<div class="ttc" id="air__Haier_8h_html_ae36f27a78f0c7463506f9d9c2ef8fc6f"><div class="ttname"><a href="ir__Haier_8h.html#ae36f27a78f0c7463506f9d9c2ef8fc6f">kHaierAcYrw02ModelA</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ModelA</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:146</div></div>
<div class="ttc" id="air__Haier_8h_html_a24fe81c1274c7a1380e41a768b3e33c2"><div class="ttname"><a href="ir__Haier_8h.html#a24fe81c1274c7a1380e41a768b3e33c2">kHaierAc160SwingVHigh</a></div><div class="ttdeci">const uint8_t kHaierAc160SwingVHigh</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:161</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_afbeda3fd1bdc8c37d01bdf9f5c8274ff"><div class="ttname"><a href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a></div><div class="ttdeci">std::string String</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1521</div></div>
<div class="ttc" id="aclassIRHaierAC_html_aff4e7de97c375daf881249eefc1c60f8"><div class="ttname"><a href="classIRHaierAC.html#aff4e7de97c375daf881249eefc1c60f8">IRHaierAC::getHealth</a></div><div class="ttdeci">bool getHealth(void) const</div><div class="ttdoc">Get the Health (filter) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:267</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a4af84cad1d8ff458ee1683ec0110e2f7"><div class="ttname"><a href="unionHaierAc160Protocol.html#a4af84cad1d8ff458ee1683ec0110e2f7">HaierAc160Protocol::OffTimerMins</a></div><div class="ttdeci">uint8_t OffTimerMins</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:303</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a1bd0a116fb4d5f04f1438a57c9719da9"><div class="ttname"><a href="classIRHaierAC160.html#a1bd0a116fb4d5f04f1438a57c9719da9">IRHaierAC160::validChecksum</a></div><div class="ttdeci">static bool validChecksum(const uint8_t state[], const uint16_t length=kHaierAC160StateLength)</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_af263405e2f19629f656f0fd6a6ef4777"><div class="ttname"><a href="classIRHaierAC160.html#af263405e2f19629f656f0fd6a6ef4777">IRHaierAC160::getLightToggle</a></div><div class="ttdeci">bool getLightToggle(void) const</div><div class="ttdoc">Get the value of the current Light toggle setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1768</div></div>
<div class="ttc" id="air__Haier_8h_html_a5c7b8ff351e3d0167ec2c897c4820c40"><div class="ttname"><a href="ir__Haier_8h.html#a5c7b8ff351e3d0167ec2c897c4820c40">kHaierAcYrw02ButtonSleep</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonSleep</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:194</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a2d79e4ac349d80aedc7c259d62cdb2a7"><div class="ttname"><a href="classIRHaierAC176.html#a2d79e4ac349d80aedc7c259d62cdb2a7">IRHaierAC176::setFan</a></div><div class="ttdeci">void setFan(const uint8_t speed)</div><div class="ttdoc">Set the speed of the fan.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:865</div></div>
<div class="ttc" id="air__Haier_8h_html_a8502c9bea40205e01e6a01b47354272a"><div class="ttname"><a href="ir__Haier_8h.html#a8502c9bea40205e01e6a01b47354272a">kHaierAcPrefix</a></div><div class="ttdeci">const uint8_t kHaierAcPrefix</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:74</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_afae387f19080e59e8b03e56c097ec204"><div class="ttname"><a href="unionHaierAc160Protocol.html#afae387f19080e59e8b03e56c097ec204">HaierAc160Protocol::OnTimerMins</a></div><div class="ttdeci">uint8_t OnTimerMins</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:310</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_aed68f80febaf4790abecf9c28c278d49"><div class="ttname"><a href="classIRHaierAC160.html#aed68f80febaf4790abecf9c28c278d49">IRHaierAC160::convertFan</a></div><div class="ttdeci">static uint8_t convertFan(const stdAc::fanspeed_t speed)</div><div class="ttdoc">Convert a stdAc::fanspeed_t enum into it's native speed.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1941</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a72b13a31ebf9c3e1f94ec9664c0f115e"><div class="ttname"><a href="classIRHaierAC176.html#a72b13a31ebf9c3e1f94ec9664c0f115e">IRHaierAC176::setRaw</a></div><div class="ttdeci">virtual void setRaw(const uint8_t new_code[])</div><div class="ttdoc">Set the internal state from a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:617</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_aa16e560145efa44bf7b4e908b1ce5179"><div class="ttname"><a href="classIRHaierAC160.html#aa16e560145efa44bf7b4e908b1ce5179">IRHaierAC160::begin</a></div><div class="ttdeci">void begin(void)</div><div class="ttdoc">Set up hardware to be able to send a message.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1495</div></div>
<div class="ttc" id="air__Haier_8h_html_aa52f6fc78d550d27024b07a9f7966544"><div class="ttname"><a href="ir__Haier_8h.html#aa52f6fc78d550d27024b07a9f7966544">kHaierAcYrw02SwingVDown</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingVDown</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:155</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ae677c5222821f424771b223d8d6e5f14"><div class="ttname"><a href="classIRHaierAC160.html#ae677c5222821f424771b223d8d6e5f14">IRHaierAC160::getButton</a></div><div class="ttdeci">uint8_t getButton(void) const</div><div class="ttdoc">Get the Button/Command setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1560</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_a8f52b7d4595c117cf0b81ffbd1148cda"><div class="ttname"><a href="IRremoteESP8266_8h.html#a8f52b7d4595c117cf0b81ffbd1148cda">kHaierACYRW02StateLength</a></div><div class="ttdeci">const uint16_t kHaierACYRW02StateLength</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1255</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html"><div class="ttname"><a href="unionHaierAc176Protocol.html">HaierAc176Protocol</a></div><div class="ttdoc">Native representation of a Haier 176 bit A/C message.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:209</div></div>
<div class="ttc" id="aclassIRHaierAC_html_aa5e95aa05749f6d35dd31b021fea2f5b"><div class="ttname"><a href="classIRHaierAC.html#aa5e95aa05749f6d35dd31b021fea2f5b">IRHaierAC::setOnTimer</a></div><div class="ttdeci">void setOnTimer(const uint16_t mins)</div><div class="ttdoc">Set &amp; enable the On Timer.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:310</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a044eeb36281c3ded0a795b3bc684457a"><div class="ttname"><a href="classIRHaierAC176.html#a044eeb36281c3ded0a795b3bc684457a">IRHaierAC176::setPower</a></div><div class="ttdeci">void setPower(const bool on)</div><div class="ttdoc">Change the power setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:803</div></div>
<div class="ttc" id="aclassIRHaierACYRW02_html_a398e5b9e79912807e06bfcc91a266ae4"><div class="ttname"><a href="classIRHaierACYRW02.html#a398e5b9e79912807e06bfcc91a266ae4">IRHaierACYRW02::send</a></div><div class="ttdeci">void send(const uint16_t repeat=kHaierAcYrw02DefaultRepeat) override</div><div class="ttdoc">Send the current internal state as an IR message.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1318</div></div>
<div class="ttc" id="air__Haier_8h_html_a9e865309d508522c4b5f04fb6ecac541"><div class="ttname"><a href="ir__Haier_8h.html#a9e865309d508522c4b5f04fb6ecac541">kHaierAcYrw02MinTempF</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02MinTempF</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:142</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a24d4d88f639758d995c4e5446ce7e234"><div class="ttname"><a href="unionHaierAc160Protocol.html#a24d4d88f639758d995c4e5446ce7e234">HaierAc160Protocol::Fan2</a></div><div class="ttdeci">uint8_t Fan2</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:337</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ac0bec7ed71bd9c9de68c58d49904350e"><div class="ttname"><a href="classIRHaierAC160.html#ac0bec7ed71bd9c9de68c58d49904350e">IRHaierAC160::toCommonFanSpeed</a></div><div class="ttdeci">static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)</div><div class="ttdoc">Convert a native fan speed into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1983</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html"><div class="ttname"><a href="IRremoteESP8266_8h.html">IRremoteESP8266.h</a></div></div>
<div class="ttc" id="anamespacestdAc_html_aae50ee315fa9c9ec1a4078da40d6b147"><div class="ttname"><a href="namespacestdAc.html#aae50ee315fa9c9ec1a4078da40d6b147">stdAc::swingh_t</a></div><div class="ttdeci">swingh_t</div><div class="ttdoc">Common A/C settings for Horizontal Swing.</div><div class="ttdef"><b>Definition:</b> IRsend.h:100</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_ac839f6afa8d40ab8f4db4ab4b96f83de"><div class="ttname"><a href="unionHaierAc176Protocol.html#ac839f6afa8d40ab8f4db4ab4b96f83de">HaierAc176Protocol::Fan2</a></div><div class="ttdeci">uint8_t Fan2</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:264</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_ac0c90f29304c433751bba3245a88117c"><div class="ttname"><a href="classIRHaierAC176.html#ac0c90f29304c433751bba3245a88117c">IRHaierAC176::getHealth</a></div><div class="ttdeci">bool getHealth(void) const</div><div class="ttdoc">Get the Health (filter) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:795</div></div>
<div class="ttc" id="air__Haier_8h_html_a9cc6b79cab7272bc27e2172dd07ba063"><div class="ttname"><a href="ir__Haier_8h.html#a9cc6b79cab7272bc27e2172dd07ba063">kHaierAcSwingVDown</a></div><div class="ttdeci">const uint8_t kHaierAcSwingVDown</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:93</div></div>
<div class="ttc" id="air__Haier_8h_html_ab47bc48ac77fbf6734a41d10f0a53e4a"><div class="ttname"><a href="ir__Haier_8h.html#ab47bc48ac77fbf6734a41d10f0a53e4a">kHaierAcYrw02FanHigh</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02FanHigh</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:174</div></div>
<div class="ttc" id="air__Haier_8h_html_af4049629b2139ca82471dfed1e1ced15"><div class="ttname"><a href="ir__Haier_8h.html#af4049629b2139ca82471dfed1e1ced15">kHaierAcFan</a></div><div class="ttdeci">const uint8_t kHaierAcFan</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:100</div></div>
<div class="ttc" id="air__Haier_8h_html_a9a0a14ab98e1e52b60b9b9bf611c20cc"><div class="ttname"><a href="ir__Haier_8h.html#a9a0a14ab98e1e52b60b9b9bf611c20cc">kHaierAcYrw02FanLow</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02FanLow</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:176</div></div>
<div class="ttc" id="air__Haier_8h_html_aa0a674fb0b2dac00633396e629eaa757"><div class="ttname"><a href="ir__Haier_8h.html#aa0a674fb0b2dac00633396e629eaa757">kHaierAcYrw02MinTempC</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02MinTempC</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:140</div></div>
<div class="ttc" id="aunionHaierProtocol_html_a44e6a58782f4c6d5e532c715e9050b5b"><div class="ttname"><a href="unionHaierProtocol.html#a44e6a58782f4c6d5e532c715e9050b5b">HaierProtocol::Fan</a></div><div class="ttdeci">uint8_t Fan</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:59</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a6e550f89c7176ca89987cce9f0d27e27"><div class="ttname"><a href="classIRHaierAC.html#a6e550f89c7176ca89987cce9f0d27e27">IRHaierAC::getSwingV</a></div><div class="ttdeci">uint8_t getSwingV(void) const</div><div class="ttdoc">Get the Vertical Swing position setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:341</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a4f16aaebe380530e428f742772948c61"><div class="ttname"><a href="classIRHaierAC176.html#a4f16aaebe380530e428f742772948c61">IRHaierAC176::setHealth</a></div><div class="ttdeci">void setHealth(const bool on)</div><div class="ttdoc">Set the Health (filter) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:788</div></div>
<div class="ttc" id="air__Haier_8h_html_a83cd81ea1115f42a403ea5ee07a32bbb"><div class="ttname"><a href="ir__Haier_8h.html#a83cd81ea1115f42a403ea5ee07a32bbb">kHaierAcCool</a></div><div class="ttdeci">const uint8_t kHaierAcCool</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:97</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_ac985a5c4c479700b42e6cb2d42a5c76b"><div class="ttname"><a href="unionHaierAc176Protocol.html#ac985a5c4c479700b42e6cb2d42a5c76b">HaierAc176Protocol::Model</a></div><div class="ttdeci">uint8_t Model</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:213</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a05ca549c6c70b7dfd76fe90ce889266d"><div class="ttname"><a href="classIRHaierAC160.html#a05ca549c6c70b7dfd76fe90ce889266d">IRHaierAC160::setFan</a></div><div class="ttdeci">void setFan(const uint8_t speed)</div><div class="ttdoc">Set the speed of the fan.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1785</div></div>
<div class="ttc" id="air__Haier_8h_html_a86c9e8176fc01e52e883cadcc1d31763"><div class="ttname"><a href="ir__Haier_8h.html#a86c9e8176fc01e52e883cadcc1d31763">kHaierAcDefTemp</a></div><div class="ttdeci">const uint8_t kHaierAcDefTemp</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:77</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_add079004a5ee76f4570fdb4447eec526"><div class="ttname"><a href="classIRHaierAC160.html#add079004a5ee76f4570fdb4447eec526">IRHaierAC160::setHealth</a></div><div class="ttdeci">void setHealth(const bool on)</div><div class="ttdoc">Set the Health (filter) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1799</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a30765e69d37eec9b59b8ce559cc75749"><div class="ttname"><a href="unionHaierAc176Protocol.html#a30765e69d37eec9b59b8ce559cc75749">HaierAc176Protocol::Button</a></div><div class="ttdeci">uint8_t Button</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:253</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a34053c32ba50ff3b81b208d068efe2a4"><div class="ttname"><a href="classIRHaierAC.html#a34053c32ba50ff3b81b208d068efe2a4">IRHaierAC::convertSwingV</a></div><div class="ttdeci">static uint8_t convertSwingV(const stdAc::swingv_t position)</div><div class="ttdoc">Convert a stdAc::swingv_t enum into it's native setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:390</div></div>
<div class="ttc" id="aclassIRHaierAC_html_af88bef780a4f14f44cd7d2549f3838b3"><div class="ttname"><a href="classIRHaierAC.html#af88bef780a4f14f44cd7d2549f3838b3">IRHaierAC::getSleep</a></div><div class="ttdeci">bool getSleep(void) const</div><div class="ttdoc">Get the Sleep setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:280</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a55777803fc8fd31c8741f31875dd9a6c"><div class="ttname"><a href="classIRHaierAC160.html#a55777803fc8fd31c8741f31875dd9a6c">IRHaierAC160::IRHaierAC160</a></div><div class="ttdeci">IRHaierAC160(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)</div><div class="ttdoc">Class constructor.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1490</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a48c9ae91809d63156eeb3889f2e908f4"><div class="ttname"><a href="classIRHaierAC.html#a48c9ae91809d63156eeb3889f2e908f4">IRHaierAC::setHealth</a></div><div class="ttdeci">void setHealth(const bool on)</div><div class="ttdoc">Set the Health (filter) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:260</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a8ad1f97b6e36427067f8ac75a9a67489"><div class="ttname"><a href="unionHaierAc176Protocol.html#a8ad1f97b6e36427067f8ac75a9a67489">HaierAc176Protocol::UseFahrenheit</a></div><div class="ttdeci">uint8_t UseFahrenheit</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:248</div></div>
<div class="ttc" id="air__Haier_8h_html_a3b24373f9c812f93eca05ee47e61d6e0"><div class="ttname"><a href="ir__Haier_8h.html#a3b24373f9c812f93eca05ee47e61d6e0">kHaierAcYrw02ButtonTempUp</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonTempUp</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:185</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ae95d82bf5105ba9b5f504b6fb1a6f81e"><div class="ttname"><a href="classIRHaierAC160.html#ae95d82bf5105ba9b5f504b6fb1a6f81e">IRHaierAC160::toCommonQuiet</a></div><div class="ttdeci">static bool toCommonQuiet(const uint8_t speed)</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ac6469e7a148b26b10e80dce6d4b82d77"><div class="ttname"><a href="classIRHaierAC160.html#ac6469e7a148b26b10e80dce6d4b82d77">IRHaierAC160::setTimerMode</a></div><div class="ttdeci">void setTimerMode(const uint8_t setting)</div><div class="ttdoc">Set the Timer operating mode.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1833</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a1f1efc862aec8858800c1077852b1350"><div class="ttname"><a href="classIRHaierAC176.html#a1f1efc862aec8858800c1077852b1350">IRHaierAC176::setSwingH</a></div><div class="ttdeci">void setSwingH(const uint8_t pos)</div><div class="ttdoc">Set the Horizontal Swing mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:921</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a87214820af72dc60463d8f8e77686042"><div class="ttname"><a href="unionHaierAc176Protocol.html#a87214820af72dc60463d8f8e77686042">HaierAc176Protocol::Temp</a></div><div class="ttdeci">uint8_t Temp</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:216</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a6d5bc29597842e3d8416d4618238028f"><div class="ttname"><a href="unionHaierAc160Protocol.html#a6d5bc29597842e3d8416d4618238028f">HaierAc160Protocol::TimerMode</a></div><div class="ttdeci">uint8_t TimerMode</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:294</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a3d6357b27ee78474e67cdbbc46dfa8fa"><div class="ttname"><a href="unionHaierAc160Protocol.html#a3d6357b27ee78474e67cdbbc46dfa8fa">HaierAc160Protocol::SwingV</a></div><div class="ttdeci">uint8_t SwingV</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:285</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ae0b5c0902c122d067f8401ecd09f901e"><div class="ttname"><a href="classIRHaierAC160.html#ae0b5c0902c122d067f8401ecd09f901e">IRHaierAC160::toCommonMode</a></div><div class="ttdeci">static stdAc::opmode_t toCommonMode(const uint8_t mode)</div><div class="ttdoc">Convert a native mode into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1970</div></div>
<div class="ttc" id="air__Haier_8h_html_aafd2a4f38ecf78482a5a94e9c6c23f1c"><div class="ttname"><a href="ir__Haier_8h.html#aafd2a4f38ecf78482a5a94e9c6c23f1c">kHaierAcMinTemp</a></div><div class="ttdeci">const uint8_t kHaierAcMinTemp</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:76</div></div>
<div class="ttc" id="air__Haier_8h_html_a798aca6bd1c58b86ac717fc2de6a70c8"><div class="ttname"><a href="ir__Haier_8h.html#a798aca6bd1c58b86ac717fc2de6a70c8">kHaierAcYrw02ButtonSwingH</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonSwingH</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:188</div></div>
<div class="ttc" id="aclassIRHaierAC_html_ad7aae554b8f0a76493efc2a43ac0f780"><div class="ttname"><a href="classIRHaierAC.html#ad7aae554b8f0a76493efc2a43ac0f780">IRHaierAC::validChecksum</a></div><div class="ttdeci">static bool validChecksum(uint8_t state[], const uint16_t length=kHaierACStateLength)</div><div class="ttdoc">Verify the checksum is valid for a given state.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:137</div></div>
<div class="ttc" id="air__Haier_8h_html_a20480c65ea6e806cab6663ff0ccf6860"><div class="ttname"><a href="ir__Haier_8h.html#a20480c65ea6e806cab6663ff0ccf6860">kHaierAcYrw02SwingVAuto</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingVAuto</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:156</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_af376a93bfd56fc11826316ffe74c2a9e"><div class="ttname"><a href="unionHaierAc160Protocol.html#af376a93bfd56fc11826316ffe74c2a9e">HaierAc160Protocol::Quiet</a></div><div class="ttdeci">uint8_t Quiet</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:305</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a40a119454fc3f87cc9ace8b65a4853b9"><div class="ttname"><a href="unionHaierAc160Protocol.html#a40a119454fc3f87cc9ace8b65a4853b9">HaierAc160Protocol::Turbo</a></div><div class="ttdeci">uint8_t Turbo</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:304</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_ac6c4ea5836ffa9d6c9e42fa410b80460"><div class="ttname"><a href="unionHaierAc176Protocol.html#ac6c4ea5836ffa9d6c9e42fa410b80460">HaierAc176Protocol::SwingV</a></div><div class="ttdeci">uint8_t SwingV</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:215</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a523b6e63f16c5f817d82bcdbf351d7e7"><div class="ttname"><a href="classIRHaierAC.html#a523b6e63f16c5f817d82bcdbf351d7e7">IRHaierAC::_</a></div><div class="ttdeci">HaierProtocol _</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:441</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a29a26ca01c597be392eb1f8fa7561ee9"><div class="ttname"><a href="classIRHaierAC176.html#a29a26ca01c597be392eb1f8fa7561ee9">IRHaierAC176::getTemp</a></div><div class="ttdeci">uint8_t getTemp(void) const</div><div class="ttdoc">Get the current temperature setting. The unit of temperature is specified by UseFahrenheit value.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:743</div></div>
<div class="ttc" id="aunionHaierProtocol_html_a4cf70c633e33066e3fc0f98bb2ad3820"><div class="ttname"><a href="unionHaierProtocol.html#a4cf70c633e33066e3fc0f98bb2ad3820">HaierProtocol::Health</a></div><div class="ttdeci">uint8_t Health</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:55</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_af87d7078ba6fd24dd489086111f14db6"><div class="ttname"><a href="IRremoteESP8266_8h.html#af87d7078ba6fd24dd489086111f14db6">kHaierAc176DefaultRepeat</a></div><div class="ttdeci">const uint16_t kHaierAc176DefaultRepeat</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1263</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_aec3c250cf2fe63fdcd02090bd400f676"><div class="ttname"><a href="unionHaierAc160Protocol.html#aec3c250cf2fe63fdcd02090bd400f676">HaierAc160Protocol::Lock</a></div><div class="ttdeci">uint8_t Lock</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:325</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a2ced03a40410e1a284d65e1f8b1ff8fd"><div class="ttname"><a href="classIRHaierAC160.html#a2ced03a40410e1a284d65e1f8b1ff8fd">IRHaierAC160::getOffTimer</a></div><div class="ttdeci">uint16_t getOffTimer(void) const</div><div class="ttdoc">Get the number of minutes of the Off Timer setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1910</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_af26d421ee293dc206f6184d2384679a9"><div class="ttname"><a href="classIRHaierAC160.html#af26d421ee293dc206f6184d2384679a9">IRHaierAC160::setClean</a></div><div class="ttdeci">void setClean(const bool on)</div><div class="ttdoc">Set the Clean setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1682</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a93a20552b0670196662de1c3d1ed9e4f"><div class="ttname"><a href="classIRHaierAC160.html#a93a20552b0670196662de1c3d1ed9e4f">IRHaierAC160::getSleep</a></div><div class="ttdeci">bool getSleep(void) const</div><div class="ttdoc">Get the Sleep setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1711</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_ac50b30666db9615303220244a007f0db"><div class="ttname"><a href="classIRHaierAC176.html#ac50b30666db9615303220244a007f0db">IRHaierAC176::toCommonFanSpeed</a></div><div class="ttdeci">static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)</div><div class="ttdoc">Convert a native fan speed into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1102</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_abf4e66e527bf93093f0b759454dbf6d3"><div class="ttname"><a href="unionHaierAc160Protocol.html#abf4e66e527bf93093f0b759454dbf6d3">HaierAc160Protocol::Button</a></div><div class="ttdeci">uint8_t Button</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:324</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a2f00f0beec9ad1cd3ddfef565f94571e"><div class="ttname"><a href="classIRHaierAC160.html#a2f00f0beec9ad1cd3ddfef565f94571e">IRHaierAC160::getClean</a></div><div class="ttdeci">bool getClean(void) const</div><div class="ttdoc">Get the Clean setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1690</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a25aaea129dc847767c9a62dcc2e81d28"><div class="ttname"><a href="classIRHaierAC176.html#a25aaea129dc847767c9a62dcc2e81d28">IRHaierAC176::stateReset</a></div><div class="ttdeci">void stateReset(void)</div><div class="ttdoc">Reset the internal state to a fixed known good state.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:597</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a19e50e429cf5b337f579c4ac9dcc8c12"><div class="ttname"><a href="classIRHaierAC176.html#a19e50e429cf5b337f579c4ac9dcc8c12">IRHaierAC176::convertFan</a></div><div class="ttdeci">static uint8_t convertFan(const stdAc::fanspeed_t speed)</div><div class="ttdoc">Convert a stdAc::fanspeed_t enum into it's native speed.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1045</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a68cce96dd8385b0abbc7822c19914a73"><div class="ttname"><a href="classIRHaierAC176.html#a68cce96dd8385b0abbc7822c19914a73">IRHaierAC176::toCommonQuiet</a></div><div class="ttdeci">static bool toCommonQuiet(const uint8_t speed)</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a6dec9046cb079650eddf4ad99930533a"><div class="ttname"><a href="unionHaierAc176Protocol.html#a6dec9046cb079650eddf4ad99930533a">HaierAc176Protocol::SwingH</a></div><div class="ttdeci">uint8_t SwingH</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:219</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ab324ff504365ab1a072442bad7d26ffb"><div class="ttname"><a href="classIRHaierAC160.html#ab324ff504365ab1a072442bad7d26ffb">IRHaierAC160::getTurbo</a></div><div class="ttdeci">bool getTurbo(void) const</div><div class="ttdoc">Get the Turbo setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1722</div></div>
<div class="ttc" id="air__Haier_8h_html_a83cd0b5f307d9ae3ed0a3c6ed8fef94d"><div class="ttname"><a href="ir__Haier_8h.html#a83cd0b5f307d9ae3ed0a3c6ed8fef94d">kHaierAcCmdHealth</a></div><div class="ttdeci">const uint8_t kHaierAcCmdHealth</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:88</div></div>
<div class="ttc" id="aunionHaierProtocol_html_aabc2a684c5936858544c02ec8a68afb9"><div class="ttname"><a href="unionHaierProtocol.html#aabc2a684c5936858544c02ec8a68afb9">HaierProtocol::unknown</a></div><div class="ttdeci">uint8_t unknown</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:47</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_adefc84ea08471e2974231e43f7046a34"><div class="ttname"><a href="classIRHaierAC160.html#adefc84ea08471e2974231e43f7046a34">IRHaierAC160::getAuxHeating</a></div><div class="ttdeci">bool getAuxHeating(void) const</div><div class="ttdoc">Get the value of the Aux Heating setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1756</div></div>
<div class="ttc" id="aunionHaierProtocol_html_a093d2441856e448462551ac7bc1b8d9b"><div class="ttname"><a href="unionHaierProtocol.html#a093d2441856e448462551ac7bc1b8d9b">HaierProtocol::CurrHours</a></div><div class="ttdeci">uint8_t CurrHours</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:46</div></div>
<div class="ttc" id="aunionHaierProtocol_html_af8966fa819bcb51f496ec185130bcf0f"><div class="ttname"><a href="unionHaierProtocol.html#af8966fa819bcb51f496ec185130bcf0f">HaierProtocol::remote_state</a></div><div class="ttdeci">uint8_t remote_state[kHaierACStateLength]</div><div class="ttdoc">&lt; The state in native IR code form</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:38</div></div>
<div class="ttc" id="air__Haier_8h_html_a72465e195bf8042a74d9b2ccb5e0b18c"><div class="ttname"><a href="ir__Haier_8h.html#a72465e195bf8042a74d9b2ccb5e0b18c">kHaierAc160SwingVMiddle</a></div><div class="ttdeci">const uint8_t kHaierAc160SwingVMiddle</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:162</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a72565d2954835156d9941a1c707457a9"><div class="ttname"><a href="unionHaierAc176Protocol.html#a72565d2954835156d9941a1c707457a9">HaierAc176Protocol::Health</a></div><div class="ttdeci">uint8_t Health</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:222</div></div>
<div class="ttc" id="air__Haier_8h_html_a83973c2ad2b7b95611c81628c387e0d8"><div class="ttname"><a href="ir__Haier_8h.html#a83973c2ad2b7b95611c81628c387e0d8">kHaierAcCmdOn</a></div><div class="ttdeci">const uint8_t kHaierAcCmdOn</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:80</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a96eccf9d3e4649dec6aed33320331f16"><div class="ttname"><a href="unionHaierAc176Protocol.html#a96eccf9d3e4649dec6aed33320331f16">HaierAc176Protocol::Sum</a></div><div class="ttdeci">uint8_t Sum</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:257</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a402a39f6583348f49b6195c3527b05a8"><div class="ttname"><a href="classIRHaierAC176.html#a402a39f6583348f49b6195c3527b05a8">IRHaierAC176::setSwingV</a></div><div class="ttdeci">void setSwingV(const uint8_t pos)</div><div class="ttdoc">Set the Vertical Swing mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:895</div></div>
<div class="ttc" id="air__Haier_8h_html_aa7451fe524b1424e841ff1089e4dda8d"><div class="ttname"><a href="ir__Haier_8h.html#aa7451fe524b1424e841ff1089e4dda8d">kHaierAcYrw02SwingHLeftMax</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingHLeftMax</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:168</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a5f87033a1ea45f87104382aa97146ada"><div class="ttname"><a href="unionHaierAc160Protocol.html#a5f87033a1ea45f87104382aa97146ada">HaierAc160Protocol::Sum2</a></div><div class="ttdeci">uint8_t Sum2</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:343</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a50f563f249d5073e9565f06b11d3b4d2"><div class="ttname"><a href="classIRHaierAC176.html#a50f563f249d5073e9565f06b11d3b4d2">IRHaierAC176::getTimerMode</a></div><div class="ttdeci">uint8_t getTimerMode(void) const</div><div class="ttdoc">Get the Timer operating mode.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:956</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a93371a85fe978fff425951ea953b9b76"><div class="ttname"><a href="unionHaierAc160Protocol.html#a93371a85fe978fff425951ea953b9b76">HaierAc160Protocol::ExtraDegreeF</a></div><div class="ttdeci">uint8_t ExtraDegreeF</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:316</div></div>
<div class="ttc" id="air__Haier_8h_html_a61a6dd4d91bddae89c8d6800159d5544"><div class="ttname"><a href="ir__Haier_8h.html#a61a6dd4d91bddae89c8d6800159d5544">kHaierAcYrw02SwingHRight</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingHRight</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:170</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a45422f4953e0aac049bb620f26f31254"><div class="ttname"><a href="classIRHaierAC176.html#a45422f4953e0aac049bb620f26f31254">IRHaierAC176::getButton</a></div><div class="ttdeci">uint8_t getButton(void) const</div><div class="ttdoc">Get the Button/Command setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:665</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_af6dd230a36b4ddcadefa2845dbb9266b"><div class="ttname"><a href="unionHaierAc176Protocol.html#af6dd230a36b4ddcadefa2845dbb9266b">HaierAc176Protocol::OnTimerHrs</a></div><div class="ttdeci">uint8_t OnTimerHrs</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:237</div></div>
<div class="ttc" id="air__Haier_8h_html_a57cba34d9ec6c406e98a2385bbae58c6"><div class="ttname"><a href="ir__Haier_8h.html#a57cba34d9ec6c406e98a2385bbae58c6">kHaierAcYrw02ButtonSwingV</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonSwingV</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:187</div></div>
<div class="ttc" id="air__Haier_8h_html_a09180578731549106d8803b614d0949f"><div class="ttname"><a href="ir__Haier_8h.html#a09180578731549106d8803b614d0949f">kHaierAcYrw02ButtonLock</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonLock</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:196</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_ae5facd10ab60e89e17120a499795c15e"><div class="ttname"><a href="unionHaierAc160Protocol.html#ae5facd10ab60e89e17120a499795c15e">HaierAc160Protocol::OnTimerHrs</a></div><div class="ttdeci">uint8_t OnTimerHrs</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:307</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_afad1829c3e5eba0e7bfe8828946ce7ca"><div class="ttname"><a href="unionHaierAc160Protocol.html#afad1829c3e5eba0e7bfe8828946ce7ca">HaierAc160Protocol::Power</a></div><div class="ttdeci">uint8_t Power</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:297</div></div>
<div class="ttc" id="air__Haier_8h_html_afc9565ba02c286872e71f413ff2b2fa4"><div class="ttname"><a href="ir__Haier_8h.html#afc9565ba02c286872e71f413ff2b2fa4">kHaierAcSwingVOff</a></div><div class="ttdeci">const uint8_t kHaierAcSwingVOff</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:91</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ae3cb8275495ace8153a57e74a09b80cb"><div class="ttname"><a href="classIRHaierAC160.html#ae3cb8275495ace8153a57e74a09b80cb">IRHaierAC160::setAuxHeating</a></div><div class="ttdeci">void setAuxHeating(const bool on)</div><div class="ttdoc">Change the Aux Heating setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1760</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_afedbf0579e687915e32c21c45a31cd86"><div class="ttname"><a href="classIRHaierAC176.html#afedbf0579e687915e32c21c45a31cd86">IRHaierAC176::toCommonMode</a></div><div class="ttdeci">static stdAc::opmode_t toCommonMode(const uint8_t mode)</div><div class="ttdoc">Convert a native mode into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1089</div></div>
<div class="ttc" id="air__Haier_8h_html_a5dfa833768e549964aa0bf8a336c32b0"><div class="ttname"><a href="ir__Haier_8h.html#a5dfa833768e549964aa0bf8a336c32b0">kHaierAcFanMed</a></div><div class="ttdeci">const uint8_t kHaierAcFanMed</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:104</div></div>
<div class="ttc" id="aclassIRHaierAC160_html"><div class="ttname"><a href="classIRHaierAC160.html">IRHaierAC160</a></div><div class="ttdoc">Class for handling detailed Haier 160 bit A/C messages.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:563</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a1974397407adb89278054c9e7351b9c2"><div class="ttname"><a href="classIRHaierAC160.html#a1974397407adb89278054c9e7351b9c2">IRHaierAC160::setButton</a></div><div class="ttdeci">void setButton(const uint8_t button)</div><div class="ttdoc">Set the Button/Command setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1539</div></div>
<div class="ttc" id="air__Haier_8h_html_ac08a11d13a4054a86b7eeef6ae9a372b"><div class="ttname"><a href="ir__Haier_8h.html#ac08a11d13a4054a86b7eeef6ae9a372b">kHaierAcYrw02ButtonCFAB</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonCFAB</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:200</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a8fdc06806b0b2cffc7080623eb09a003"><div class="ttname"><a href="classIRHaierAC176.html#a8fdc06806b0b2cffc7080623eb09a003">IRHaierAC176::getFan</a></div><div class="ttdeci">uint8_t getFan(void) const</div><div class="ttdoc">Get the current fan speed setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:861</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a1e7fd853b97f819c1dd3063886f8bb67"><div class="ttname"><a href="unionHaierAc176Protocol.html#a1e7fd853b97f819c1dd3063886f8bb67">HaierAc176Protocol::Turbo</a></div><div class="ttdeci">uint8_t Turbo</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:234</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a5c6b11a970ce292610c8d76d1e25159f"><div class="ttname"><a href="classIRHaierAC160.html#a5c6b11a970ce292610c8d76d1e25159f">IRHaierAC160::_</a></div><div class="ttdeci">HaierAc160Protocol _</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:650</div></div>
<div class="ttc" id="air__Haier_8h_html_af4a9e5f7f705c331531ea2863dbbd11d"><div class="ttname"><a href="ir__Haier_8h.html#af4a9e5f7f705c331531ea2863dbbd11d">kHaierAcYrw02ButtonTempDown</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonTempDown</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:186</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a046413825ab2c42a7f6802ddd2c3affe"><div class="ttname"><a href="classIRHaierAC176.html#a046413825ab2c42a7f6802ddd2c3affe">IRHaierAC176::_irsend</a></div><div class="ttdeci">IRsend _irsend</div><div class="ttdoc">Instance of the IR send class.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:533</div></div>
<div class="ttc" id="aclassIRHaierAC_html"><div class="ttname"><a href="classIRHaierAC.html">IRHaierAC</a></div><div class="ttdoc">Class for handling detailed Haier A/C messages.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:376</div></div>
<div class="ttc" id="air__Haier_8h_html_a3dc6299c16ea746376d337f4631dc517"><div class="ttname"><a href="ir__Haier_8h.html#a3dc6299c16ea746376d337f4631dc517">kHaierAc160SwingVLowest</a></div><div class="ttdeci">const uint8_t kHaierAc160SwingVLowest</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:164</div></div>
<div class="ttc" id="aunionHaierProtocol_html_a65fe65bdfb819fec434eba573daccc34"><div class="ttname"><a href="unionHaierProtocol.html#a65fe65bdfb819fec434eba573daccc34">HaierProtocol::OnMins</a></div><div class="ttdeci">uint8_t OnMins</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:64</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_aef3fe7154777a5784569ae1d8515aaff"><div class="ttname"><a href="classIRHaierAC176.html#aef3fe7154777a5784569ae1d8515aaff">IRHaierAC176::IRHaierAC176</a></div><div class="ttdeci">IRHaierAC176(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)</div><div class="ttdoc">Class constructor.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:556</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_ae31481f6e94ca7dadabf3b58e1925e82"><div class="ttname"><a href="classIRHaierAC176.html#ae31481f6e94ca7dadabf3b58e1925e82">IRHaierAC176::setOffTimer</a></div><div class="ttdeci">void setOffTimer(const uint16_t mins)</div><div class="ttdoc">Set the number of minutes of the Off Timer setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:990</div></div>
<div class="ttc" id="aclassIRHaierAC_html_aa16b36aa7ef07628343dbd2dfe5157a2"><div class="ttname"><a href="classIRHaierAC.html#aa16b36aa7ef07628343dbd2dfe5157a2">IRHaierAC::setOffTimer</a></div><div class="ttdeci">void setOffTimer(const uint16_t mins)</div><div class="ttdoc">Set &amp; enable the Off Timer.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:319</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_aa69c99ac3a7dae7b4d5a40ad72531a73"><div class="ttname"><a href="unionHaierAc176Protocol.html#aa69c99ac3a7dae7b4d5a40ad72531a73">HaierAc176Protocol::OnTimerMins</a></div><div class="ttdeci">uint8_t OnTimerMins</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:240</div></div>
<div class="ttc" id="air__Haier_8h_html_ad554d38035ac15e4ea8b855802886989"><div class="ttname"><a href="ir__Haier_8h.html#ad554d38035ac15e4ea8b855802886989">kHaierAcYrw02FanAuto</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02FanAuto</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:177</div></div>
<div class="ttc" id="air__Haier_8h_html_a12cae5decc9032d65bca18d84d817fc2"><div class="ttname"><a href="ir__Haier_8h.html#a12cae5decc9032d65bca18d84d817fc2">kHaierAc176Prefix</a></div><div class="ttdeci">const uint8_t kHaierAc176Prefix</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:148</div></div>
<div class="ttc" id="air__Haier_8h_html_a925252489fe34d9932151817d0dbe90b"><div class="ttname"><a href="ir__Haier_8h.html#a925252489fe34d9932151817d0dbe90b">kHaierAcMaxTemp</a></div><div class="ttdeci">const uint8_t kHaierAcMaxTemp</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:78</div></div>
<div class="ttc" id="air__Haier_8h_html_a0f9c265510e1e27f38817f08ef9c622b"><div class="ttname"><a href="ir__Haier_8h.html#a0f9c265510e1e27f38817f08ef9c622b">kHaierAcYrw02ButtonFan</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonFan</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:189</div></div>
<div class="ttc" id="air__Haier_8h_html_a30c5d4e61ae3112a8a3e3622eecbb10b"><div class="ttname"><a href="ir__Haier_8h.html#a30c5d4e61ae3112a8a3e3622eecbb10b">kHaierAcYrw02Cool</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02Cool</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:180</div></div>
<div class="ttc" id="aclassIRHaierAC176_html"><div class="ttname"><a href="classIRHaierAC176.html">IRHaierAC176</a></div><div class="ttdoc">Class for handling detailed Haier 176 bit A/C messages.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:446</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ac2825443e17aa23f5a6e1bf4dbedbd81"><div class="ttname"><a href="classIRHaierAC160.html#ac2825443e17aa23f5a6e1bf4dbedbd81">IRHaierAC160::convertMode</a></div><div class="ttdeci">static uint8_t convertMode(const stdAc::opmode_t mode)</div><div class="ttdoc">Convert a stdAc::opmode_t enum into its native mode.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1928</div></div>
<div class="ttc" id="air__Haier_8h_html_a7296e228ad486af8e31062bfb1b149ed"><div class="ttname"><a href="ir__Haier_8h.html#a7296e228ad486af8e31062bfb1b149ed">kHaierAcYrw02ButtonTimer</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonTimer</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:195</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a4d73f75516afff0ef18bdbb7ed9c26ed"><div class="ttname"><a href="classIRHaierAC.html#a4d73f75516afff0ef18bdbb7ed9c26ed">IRHaierAC::toCommonMode</a></div><div class="ttdeci">static stdAc::opmode_t toCommonMode(const uint8_t mode)</div><div class="ttdoc">Convert a native mode into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:405</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a636ed7b995faa5243d0ef6b3f4bd0309"><div class="ttname"><a href="classIRHaierAC176.html#a636ed7b995faa5243d0ef6b3f4bd0309">IRHaierAC176::setQuiet</a></div><div class="ttdeci">void setQuiet(const bool on)</div><div class="ttdoc">Set the Quiet setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:849</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_af6aaf03208ecfd332e33afbfefed6158"><div class="ttname"><a href="unionHaierAc160Protocol.html#af6aaf03208ecfd332e33afbfefed6158">HaierAc160Protocol::UseFahrenheit</a></div><div class="ttdeci">uint8_t UseFahrenheit</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:319</div></div>
<div class="ttc" id="aunionHaierProtocol_html_aecaad31185de1e7843047a9b9194d55b"><div class="ttname"><a href="unionHaierProtocol.html#aecaad31185de1e7843047a9b9194d55b">HaierProtocol::OffHours</a></div><div class="ttdeci">uint8_t OffHours</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:54</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a1998836b66a6df15eefc1c6558569b9c"><div class="ttname"><a href="classIRHaierAC176.html#a1998836b66a6df15eefc1c6558569b9c">IRHaierAC176::setSwing</a></div><div class="ttdeci">void setSwing(const uint8_t pos)</div><div class="ttdoc">For backward compatibility. Use setSwingV() instead. Set the Vertical Swing mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:887</div></div>
<div class="ttc" id="air__Haier_8h_html_a8a34e74f7083caa98ed4afc31294539e"><div class="ttname"><a href="ir__Haier_8h.html#a8a34e74f7083caa98ed4afc31294539e">kHaierAcFanAuto</a></div><div class="ttdeci">const uint8_t kHaierAcFanAuto</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:102</div></div>
<div class="ttc" id="air__Haier_8h_html_a396462490721b4673df47cf20f3710f4"><div class="ttname"><a href="ir__Haier_8h.html#a396462490721b4673df47cf20f3710f4">kHaierAc160SwingVAuto</a></div><div class="ttdeci">const uint8_t kHaierAc160SwingVAuto</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:165</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_ac822145539ba966899947bcbb7815d54"><div class="ttname"><a href="unionHaierAc160Protocol.html#ac822145539ba966899947bcbb7815d54">HaierAc160Protocol::Model</a></div><div class="ttdeci">uint8_t Model</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:283</div></div>
<div class="ttc" id="air__Haier_8h_html_ac14afe7606ea573eb6642899f3315a40"><div class="ttname"><a href="ir__Haier_8h.html#ac14afe7606ea573eb6642899f3315a40">kHaierAcYrw02SwingHLeft</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingHLeft</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:169</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a66552fe7c516e881fe3e2ec18fe4d491"><div class="ttname"><a href="classIRHaierAC160.html#a66552fe7c516e881fe3e2ec18fe4d491">IRHaierAC160::checksum</a></div><div class="ttdeci">void checksum(void)</div><div class="ttdoc">Calculate and set the checksum values for the internal state.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1506</div></div>
<div class="ttc" id="air__Haier_8h_html_aa46862918e790c35a0a0f162145ab179"><div class="ttname"><a href="ir__Haier_8h.html#aa46862918e790c35a0a0f162145ab179">kHaierAcYrw02OnThenOffTimer</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02OnThenOffTimer</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:205</div></div>
<div class="ttc" id="air__Haier_8h_html_a96599917176ee244874926d1a530dd7e"><div class="ttname"><a href="ir__Haier_8h.html#a96599917176ee244874926d1a530dd7e">kHaierAcCmdOff</a></div><div class="ttdeci">const uint8_t kHaierAcCmdOff</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:79</div></div>
<div class="ttc" id="aunionHaierProtocol_html_a88942d48d868ff5697040d5a89f93099"><div class="ttname"><a href="unionHaierProtocol.html#a88942d48d868ff5697040d5a89f93099">HaierProtocol::Sleep</a></div><div class="ttdeci">uint8_t Sleep</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:65</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_af6aa843ddacc56c555e06201058a02cc"><div class="ttname"><a href="unionHaierAc160Protocol.html#af6aa843ddacc56c555e06201058a02cc">HaierAc160Protocol::Temp</a></div><div class="ttdeci">uint8_t Temp</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:286</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a254745ab5b7733b82b3c4a2be98966ef"><div class="ttname"><a href="classIRHaierAC160.html#a254745ab5b7733b82b3c4a2be98966ef">IRHaierAC160::setOffTimer</a></div><div class="ttdeci">void setOffTimer(const uint16_t mins)</div><div class="ttdoc">Set the number of minutes of the Off Timer setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1886</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a54c893fbe47a93029e5ca105438ba832"><div class="ttname"><a href="classIRHaierAC160.html#a54c893fbe47a93029e5ca105438ba832">IRHaierAC160::send</a></div><div class="ttdeci">virtual void send(const uint16_t repeat=kHaierAc160DefaultRepeat)</div><div class="ttdoc">Send the current internal state as an IR message.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1500</div></div>
<div class="ttc" id="air__Haier_8h_html_aafe61ad21d7094608e07dfd0d55b52d4"><div class="ttname"><a href="ir__Haier_8h.html#aafe61ad21d7094608e07dfd0d55b52d4">kHaierAcYrw02SwingHAuto</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingHAuto</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:172</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a738de44369e3322d264c8ee78cc72ab6"><div class="ttname"><a href="classIRHaierAC.html#a738de44369e3322d264c8ee78cc72ab6">IRHaierAC::toCommon</a></div><div class="ttdeci">stdAc::state_t toCommon(void) const</div><div class="ttdoc">Convert the current internal state into its stdAc::state_t equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:441</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ac3b0e49cf59fa2bac7e6043ff8db19f3"><div class="ttname"><a href="classIRHaierAC160.html#ac3b0e49cf59fa2bac7e6043ff8db19f3">IRHaierAC160::getFan</a></div><div class="ttdeci">uint8_t getFan(void) const</div><div class="ttdoc">Get the current fan speed setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1781</div></div>
<div class="ttc" id="aclassIRHaierACYRW02_html_aa33abd66218439bf838d553964dbdd23"><div class="ttname"><a href="classIRHaierACYRW02.html#aa33abd66218439bf838d553964dbdd23">IRHaierACYRW02::setRaw</a></div><div class="ttdeci">void setRaw(const uint8_t new_code[]) override</div><div class="ttdoc">Set the internal state from a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1325</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_ae1d5920a503aa582e79713b8bfceb26c"><div class="ttname"><a href="classIRHaierAC176.html#ae1d5920a503aa582e79713b8bfceb26c">IRHaierAC176::toCommonSwingH</a></div><div class="ttdeci">static stdAc::swingh_t toCommonSwingH(const uint8_t pos)</div><div class="ttdoc">Convert a stdAc::swingh_t enum into it's native setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1128</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_ab926766f255d0eb61251bac33759737c"><div class="ttname"><a href="classIRHaierAC176.html#ab926766f255d0eb61251bac33759737c">IRHaierAC176::IRHaierACYRW02</a></div><div class="ttdeci">friend class IRHaierACYRW02</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:447</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a1c71cd51382036c4548b460a13072e91"><div class="ttname"><a href="classIRHaierAC.html#a1c71cd51382036c4548b460a13072e91">IRHaierAC::getOnTimer</a></div><div class="ttdeci">int16_t getOnTimer(void) const</div><div class="ttdoc">Get the On Timer value/setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:286</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a94b02df9d4993797a83fed89fc80cb73"><div class="ttname"><a href="classIRHaierAC176.html#a94b02df9d4993797a83fed89fc80cb73">IRHaierAC176::send</a></div><div class="ttdeci">virtual void send(const uint16_t repeat=kHaierAc176DefaultRepeat)</div><div class="ttdoc">Send the current internal state as an IR message.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:566</div></div>
<div class="ttc" id="air__Haier_8h_html_aa0873975b6649294a3c9943130cb7a38"><div class="ttname"><a href="ir__Haier_8h.html#aa0873975b6649294a3c9943130cb7a38">kHaierAcYrw02Heat</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02Heat</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:182</div></div>
<div class="ttc" id="air__Haier_8h_html_abe139740ea22c7abf294933e5b958c69"><div class="ttname"><a href="ir__Haier_8h.html#abe139740ea22c7abf294933e5b958c69">kHaierAc160SwingVOff</a></div><div class="ttdeci">const uint8_t kHaierAc160SwingVOff</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:158</div></div>
<div class="ttc" id="aclassIRHaierAC_html_ab7faae274ff7f30bf7df3c58d6e7e210"><div class="ttname"><a href="classIRHaierAC.html#ab7faae274ff7f30bf7df3c58d6e7e210">IRHaierAC::checksum</a></div><div class="ttdeci">void checksum(void)</div><div class="ttdoc">Calculate and set the checksum values for the internal state.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:129</div></div>
<div class="ttc" id="aclassIRHaierAC_html_ade34c951e72a794c2ff7fa0d1595d68f"><div class="ttname"><a href="classIRHaierAC.html#ade34c951e72a794c2ff7fa0d1595d68f">IRHaierAC::setCommand</a></div><div class="ttdeci">void setCommand(const uint8_t command)</div><div class="ttdoc">Set the Command/Button setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:168</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_af64736f333b9fcac509042b5ca0a8d11"><div class="ttname"><a href="classIRHaierAC160.html#af64736f333b9fcac509042b5ca0a8d11">IRHaierAC160::_irsend</a></div><div class="ttdeci">IRsend _irsend</div><div class="ttdoc">Instance of the IR send class.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:644</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a448b1d5db05f7722db4758e968ea3171"><div class="ttname"><a href="classIRHaierAC.html#a448b1d5db05f7722db4758e968ea3171">IRHaierAC::calibrate</a></div><div class="ttdeci">int8_t calibrate(void)</div><div class="ttdoc">Run the calibration to calculate uSec timing offsets for this platform.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:386</div></div>
<div class="ttc" id="air__Haier_8h_html_a27c3c3fa51224900a5cf7bfbe6935f0d"><div class="ttname"><a href="ir__Haier_8h.html#a27c3c3fa51224900a5cf7bfbe6935f0d">kHaierAc160SwingVTop</a></div><div class="ttdeci">const uint8_t kHaierAc160SwingVTop</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:159</div></div>
<div class="ttc" id="air__Haier_8h_html_a53edf8d79896b000840144f12db510f0"><div class="ttname"><a href="ir__Haier_8h.html#a53edf8d79896b000840144f12db510f0">kHaierAcYrw02MaxTempF</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02MaxTempF</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:143</div></div>
<div class="ttc" id="air__Haier_8h_html_ac63b91acdffa55d440b08aee05bda5dc"><div class="ttname"><a href="ir__Haier_8h.html#ac63b91acdffa55d440b08aee05bda5dc">kHaierAcSleepBit</a></div><div class="ttdeci">const uint8_t kHaierAcSleepBit</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:109</div></div>
<div class="ttc" id="air__Haier_8h_html_a3d36fbe1308221248f45044e5a671636"><div class="ttname"><a href="ir__Haier_8h.html#a3d36fbe1308221248f45044e5a671636">kHaierAcDry</a></div><div class="ttdeci">const uint8_t kHaierAcDry</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:98</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a03feab7dc7cc929aef0dbdd8837a5d4a"><div class="ttname"><a href="classIRHaierAC176.html#a03feab7dc7cc929aef0dbdd8837a5d4a">IRHaierAC176::setModel</a></div><div class="ttdeci">void setModel(const haier_ac176_remote_model_t model)</div><div class="ttdoc">Set the model of the A/C to emulate.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:652</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_acbe418119f018552f5efe4f887e37665"><div class="ttname"><a href="classIRHaierAC160.html#acbe418119f018552f5efe4f887e37665">IRHaierAC160::toString</a></div><div class="ttdeci">String toString(void) const</div><div class="ttdoc">Convert the current internal state into a human readable string.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:2046</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a210363784930717240ab26d1a689985e"><div class="ttname"><a href="classIRHaierAC176.html#a210363784930717240ab26d1a689985e">IRHaierAC176::convertMode</a></div><div class="ttdeci">static uint8_t convertMode(const stdAc::opmode_t mode)</div><div class="ttdoc">Convert a stdAc::opmode_t enum into its native mode.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1032</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a2cc3291a7c8c638bb43857c4a8b44ed9"><div class="ttname"><a href="unionHaierAc160Protocol.html#a2cc3291a7c8c638bb43857c4a8b44ed9">HaierAc160Protocol::SwingH</a></div><div class="ttdeci">uint8_t SwingH</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:289</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a2dabfc2c7969e36b09cf9e3bd8ab14b3"><div class="ttname"><a href="classIRHaierAC160.html#a2dabfc2c7969e36b09cf9e3bd8ab14b3">IRHaierAC160::setUseFahrenheit</a></div><div class="ttdeci">void setUseFahrenheit(const bool on)</div><div class="ttdoc">Set the default temperature units to use.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1591</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a8550bb87407ede915f7b7a303fb2f6a2"><div class="ttname"><a href="classIRHaierAC160.html#a8550bb87407ede915f7b7a303fb2f6a2">IRHaierAC160::setLock</a></div><div class="ttdeci">void setLock(const bool on)</div><div class="ttdoc">Set the Lock setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1920</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_ad7cd77d7ac518492310939f4941e2252"><div class="ttname"><a href="classIRHaierAC160.html#ad7cd77d7ac518492310939f4941e2252">IRHaierAC160::setLightToggle</a></div><div class="ttdeci">void setLightToggle(const bool on)</div><div class="ttdoc">Set the Light Toggle setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1775</div></div>
<div class="ttc" id="aclassIRHaierAC_html_aac354e2e4ad72d91667509398078b309"><div class="ttname"><a href="classIRHaierAC.html#aac354e2e4ad72d91667509398078b309">IRHaierAC::toCommonSwingV</a></div><div class="ttdeci">static stdAc::swingv_t toCommonSwingV(const uint8_t pos)</div><div class="ttdoc">Convert a stdAc::swingv_t enum into it's native setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:430</div></div>
<div class="ttc" id="air__Haier_8h_html_a38f92622851e2dd5cb33e65b4ffc6fc3"><div class="ttname"><a href="ir__Haier_8h.html#a38f92622851e2dd5cb33e65b4ffc6fc3">kHaierAcYrw02NoTimers</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02NoTimers</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:202</div></div>
<div class="ttc" id="air__Haier_8h_html_a74466c50b450b08407c9f226a5d657e5"><div class="ttname"><a href="ir__Haier_8h.html#a74466c50b450b08407c9f226a5d657e5">kHaierAcYrw02ButtonMode</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonMode</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:191</div></div>
<div class="ttc" id="air__Haier_8h_html_a0edb011bdf85197e63a32d37f8517dd2"><div class="ttname"><a href="ir__Haier_8h.html#a0edb011bdf85197e63a32d37f8517dd2">kHaierAcHeat</a></div><div class="ttdeci">const uint8_t kHaierAcHeat</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:99</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a06c823b002f1136defe7a4296cd89f87"><div class="ttname"><a href="classIRHaierAC176.html#a06c823b002f1136defe7a4296cd89f87">IRHaierAC176::getSwing</a></div><div class="ttdeci">uint8_t getSwing(void) const</div><div class="ttdoc">These functions are for backward compatibility. Use getSwingV() and setSwingV() instead.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:880</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a498ac6af23e000723076365516e95927"><div class="ttname"><a href="unionHaierAc160Protocol.html#a498ac6af23e000723076365516e95927">HaierAc160Protocol::Sleep</a></div><div class="ttdeci">uint8_t Sleep</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:312</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a6def5b9a8653277379be6591ce0773f7"><div class="ttname"><a href="classIRHaierAC160.html#a6def5b9a8653277379be6591ce0773f7">IRHaierAC160::setPower</a></div><div class="ttdeci">void setPower(const bool on)</div><div class="ttdoc">Change the power setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1698</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a5deaf89b8a04a4d22e2e7d40fb70cfa3"><div class="ttname"><a href="unionHaierAc176Protocol.html#a5deaf89b8a04a4d22e2e7d40fb70cfa3">HaierAc176Protocol::Sum2</a></div><div class="ttdeci">uint8_t Sum2</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:274</div></div>
<div class="ttc" id="aunionHaierProtocol_html"><div class="ttname"><a href="unionHaierProtocol.html">HaierProtocol</a></div><div class="ttdoc">Native representation of a Haier HSU07-HEA03 A/C message.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:36</div></div>
<div class="ttc" id="aclassIRHaierAC_html_ab92fd48ccb5707cb6d14e9d46ce42e17"><div class="ttname"><a href="classIRHaierAC.html#ab92fd48ccb5707cb6d14e9d46ce42e17">IRHaierAC::begin</a></div><div class="ttdeci">void begin(void)</div><div class="ttdoc">Set up hardware to be able to send a message.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:118</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a4088c5b99375a891568d05e57669b1c7"><div class="ttname"><a href="classIRHaierAC160.html#a4088c5b99375a891568d05e57669b1c7">IRHaierAC160::getTemp</a></div><div class="ttdeci">uint8_t getTemp(void) const</div><div class="ttdoc">Get the current temperature setting. The unit of temperature is specified by UseFahrenheit value.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1637</div></div>
<div class="ttc" id="air__Haier_8h_html_ae04e48e926a7533c3b62f0ff991e1f88"><div class="ttname"><a href="ir__Haier_8h.html#ae04e48e926a7533c3b62f0ff991e1f88">kHaierAcMaxTime</a></div><div class="ttdeci">const uint16_t kHaierAcMaxTime</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:107</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a778c43166c25572360ea51e0aaddf561"><div class="ttname"><a href="classIRHaierAC160.html#a778c43166c25572360ea51e0aaddf561">IRHaierAC160::setTemp</a></div><div class="ttdeci">void setTemp(const uint8_t temp, const bool fahrenheit=false)</div><div class="ttdoc">Set the temperature.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1600</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a53500ebdec058d27396e5906a572fe15"><div class="ttname"><a href="classIRHaierAC.html#a53500ebdec058d27396e5906a572fe15">IRHaierAC::setCurrTime</a></div><div class="ttdeci">void setCurrTime(const uint16_t mins)</div><div class="ttdoc">Set the clock value for the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:335</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a1161e24993a2043d32b076ee49591955"><div class="ttname"><a href="unionHaierAc176Protocol.html#a1161e24993a2043d32b076ee49591955">HaierAc176Protocol::Lock</a></div><div class="ttdeci">uint8_t Lock</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:254</div></div>
<div class="ttc" id="aclassIRHaierACYRW02_html"><div class="ttname"><a href="classIRHaierACYRW02.html">IRHaierACYRW02</a></div><div class="ttdoc">Class for handling detailed Haier ACYRW02 A/C messages.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:544</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a0b78060cbd150cd886a409adc2dea49c"><div class="ttname"><a href="classIRHaierAC.html#a0b78060cbd150cd886a409adc2dea49c">IRHaierAC::IRHaierAC</a></div><div class="ttdeci">IRHaierAC(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)</div><div class="ttdoc">Class constructor.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:113</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a9fb2a375cc1b8692fe4d5dcdd765cc46"><div class="ttname"><a href="classIRHaierAC.html#a9fb2a375cc1b8692fe4d5dcdd765cc46">IRHaierAC::setTemp</a></div><div class="ttdeci">void setTemp(const uint8_t temp)</div><div class="ttdoc">Set the temperature.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:236</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a0e9bea37c9f3a43ad205994b396d5cd2"><div class="ttname"><a href="classIRHaierAC.html#a0e9bea37c9f3a43ad205994b396d5cd2">IRHaierAC::getCommand</a></div><div class="ttdeci">uint8_t getCommand(void) const</div><div class="ttdoc">Get the Command/Button setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:187</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a3d360881f832a992000e6bd49df4a9b0"><div class="ttname"><a href="classIRHaierAC160.html#a3d360881f832a992000e6bd49df4a9b0">IRHaierAC160::setMode</a></div><div class="ttdeci">void setMode(const uint8_t mode)</div><div class="ttdoc">Set the operating mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1564</div></div>
<div class="ttc" id="air__Haier_8h_html_a0ddcc202ded32bb7eb23b8b2b0e85a4c"><div class="ttname"><a href="ir__Haier_8h.html#a0ddcc202ded32bb7eb23b8b2b0e85a4c">kHaierAc160ButtonAuxHeating</a></div><div class="ttdeci">const uint8_t kHaierAc160ButtonAuxHeating</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:198</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a98af4a553e270b94d7067202baffc329"><div class="ttname"><a href="classIRHaierAC160.html#a98af4a553e270b94d7067202baffc329">IRHaierAC160::toCommonSwingV</a></div><div class="ttdeci">static stdAc::swingv_t toCommonSwingV(const uint8_t pos)</div><div class="ttdoc">Convert a stdAc::swingv_t enum into it's native setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1995</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a2c91e970fd31144fd49175675bc3cdba"><div class="ttname"><a href="classIRHaierAC176.html#a2c91e970fd31144fd49175675bc3cdba">IRHaierAC176::setOnTimer</a></div><div class="ttdeci">void setOnTimer(const uint16_t mins)</div><div class="ttdoc">Set the number of minutes of the On Timer setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:960</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a6ce9d4db11e2a92850abd5f2af7de997"><div class="ttname"><a href="classIRHaierAC160.html#a6ce9d4db11e2a92850abd5f2af7de997">IRHaierAC160::getHealth</a></div><div class="ttdeci">bool getHealth(void) const</div><div class="ttdoc">Get the Health (filter) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1806</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a8eeb33dffd839ac0c1a238dbb1e5bdcd"><div class="ttname"><a href="unionHaierAc160Protocol.html#a8eeb33dffd839ac0c1a238dbb1e5bdcd">HaierAc160Protocol::Fan</a></div><div class="ttdeci">uint8_t Fan</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:301</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a9bb2287178e176b2baf41bf18b59047d"><div class="ttname"><a href="classIRHaierAC176.html#a9bb2287178e176b2baf41bf18b59047d">IRHaierAC176::getMode</a></div><div class="ttdeci">uint8_t getMode(void) const</div><div class="ttdoc">Get the operating mode setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:692</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_a82068891fddbc38c19e918b09c5a5729"><div class="ttname"><a href="unionHaierAc176Protocol.html#a82068891fddbc38c19e918b09c5a5729">HaierAc176Protocol::TimerMode</a></div><div class="ttdeci">uint8_t TimerMode</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:224</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_aaf4a741a22fc198c6e7661b3b2aacac9"><div class="ttname"><a href="classIRHaierAC176.html#aaf4a741a22fc198c6e7661b3b2aacac9">IRHaierAC176::getQuiet</a></div><div class="ttdeci">bool getQuiet(void) const</div><div class="ttdoc">Get the Quiet setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:844</div></div>
<div class="ttc" id="air__Haier_8h_html_a66cd902f2d35b4c8f66f085a0950a5fc"><div class="ttname"><a href="ir__Haier_8h.html#a66cd902f2d35b4c8f66f085a0950a5fc">kHaierAcYrw02Dry</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02Dry</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:181</div></div>
<div class="ttc" id="aunionHaierProtocol_html_af08311ee6680b3a6951bd200e2b8f310"><div class="ttname"><a href="unionHaierProtocol.html#af08311ee6680b3a6951bd200e2b8f310">HaierProtocol::OnHours</a></div><div class="ttdeci">uint8_t OnHours</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:61</div></div>
<div class="ttc" id="aunionHaierProtocol_html_a6f3893711bffc1d59d8e3d76e7a954a2"><div class="ttname"><a href="unionHaierProtocol.html#a6f3893711bffc1d59d8e3d76e7a954a2">HaierProtocol::OffTimer</a></div><div class="ttdeci">uint8_t OffTimer</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:51</div></div>
<div class="ttc" id="astructstdAc_1_1state__t_html"><div class="ttname"><a href="structstdAc_1_1state__t.html">stdAc::state_t</a></div><div class="ttdoc">Structure to hold a common A/C state.</div><div class="ttdef"><b>Definition:</b> IRsend.h:114</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a8f2f6a3b744163abf8334f1fc9fbc9ad"><div class="ttname"><a href="classIRHaierAC176.html#a8f2f6a3b744163abf8334f1fc9fbc9ad">IRHaierAC176::getModel</a></div><div class="ttdeci">haier_ac176_remote_model_t getModel(void) const</div><div class="ttdoc">Get/Detect the model of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:643</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a8cb668293fe88379912b90515757ef07"><div class="ttname"><a href="unionHaierAc160Protocol.html#a8cb668293fe88379912b90515757ef07">HaierAc160Protocol::Clean2</a></div><div class="ttdeci">uint8_t Clean2</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:333</div></div>
<div class="ttc" id="air__Haier_8h_html_a167705c579d16ca7f497b625949fbe9f"><div class="ttname"><a href="ir__Haier_8h.html#a167705c579d16ca7f497b625949fbe9f">kHaierAc160SwingVLow</a></div><div class="ttdeci">const uint8_t kHaierAc160SwingVLow</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:163</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_a6e9c641809880b032e33e36d1d84f842"><div class="ttname"><a href="IRremoteESP8266_8h.html#a6e9c641809880b032e33e36d1d84f842">kHaierAc160DefaultRepeat</a></div><div class="ttdeci">const uint16_t kHaierAc160DefaultRepeat</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1260</div></div>
<div class="ttc" id="aunionHaierProtocol_html_aeb39971e74e12fb0c7463006d6c644bd"><div class="ttname"><a href="unionHaierProtocol.html#aeb39971e74e12fb0c7463006d6c644bd">HaierProtocol::Command</a></div><div class="ttdeci">uint8_t Command</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:43</div></div>
<div class="ttc" id="air__Haier_8h_html_af91b01320a7a7acaf29269e0366565b4"><div class="ttname"><a href="ir__Haier_8h.html#af91b01320a7a7acaf29269e0366565b4">kHaierAcYrw02SwingVOff</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02SwingVOff</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:151</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a82cd6fb7703d169e74e9b6ce2c10ad88"><div class="ttname"><a href="classIRHaierAC176.html#a82cd6fb7703d169e74e9b6ce2c10ad88">IRHaierAC176::convertSwingH</a></div><div class="ttdeci">static uint8_t convertSwingH(const stdAc::swingh_t position)</div><div class="ttdoc">Convert a stdAc::swingh_t enum into it's native setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1074</div></div>
<div class="ttc" id="aunionHaierProtocol_html_a6eec6ff574e93f327ca567251b37e33b"><div class="ttname"><a href="unionHaierProtocol.html#a6eec6ff574e93f327ca567251b37e33b">HaierProtocol::OffMins</a></div><div class="ttdeci">uint8_t OffMins</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:58</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a23f00c7174cc76d72e8731f8c8bde108"><div class="ttname"><a href="classIRHaierAC160.html#a23f00c7174cc76d72e8731f8c8bde108">IRHaierAC160::getMode</a></div><div class="ttdeci">uint8_t getMode(void) const</div><div class="ttdoc">Get the operating mode setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1586</div></div>
<div class="ttc" id="aunionHaierProtocol_html_a5842a170e3cdd0ad823cf244c7b8dd51"><div class="ttname"><a href="unionHaierProtocol.html#a5842a170e3cdd0ad823cf244c7b8dd51">HaierProtocol::Sum</a></div><div class="ttdeci">uint8_t Sum</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:68</div></div>
<div class="ttc" id="aclassIRHaierAC_html_ad67ee0b7299d041aad77382dde893229"><div class="ttname"><a href="classIRHaierAC.html#ad67ee0b7299d041aad77382dde893229">IRHaierAC::toCommonFanSpeed</a></div><div class="ttdeci">static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)</div><div class="ttdoc">Convert a native fan speed into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:418</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_a04e1ea96f808b9a6bb755f7e08004ff6"><div class="ttname"><a href="unionHaierAc160Protocol.html#a04e1ea96f808b9a6bb755f7e08004ff6">HaierAc160Protocol::raw</a></div><div class="ttdeci">uint8_t raw[kHaierAC160StateLength]</div><div class="ttdoc">The state in native form.</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:280</div></div>
<div class="ttc" id="air__Haier_8h_html_af36b9c628a697f6c596052ecd143d80b"><div class="ttname"><a href="ir__Haier_8h.html#af36b9c628a697f6c596052ecd143d80b">kHaierAcYrw02ButtonPower</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ButtonPower</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:190</div></div>
<div class="ttc" id="air__Haier_8h_html_ae514e61ee32c322d0069d5226e5cada1"><div class="ttname"><a href="ir__Haier_8h.html#ae514e61ee32c322d0069d5226e5cada1">kHaierAcYrw02ModelB</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02ModelB</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:147</div></div>
<div class="ttc" id="aclassIRHaierAC160_html_a7adb3aa53e9a4866fb870e0e134cc23c"><div class="ttname"><a href="classIRHaierAC160.html#a7adb3aa53e9a4866fb870e0e134cc23c">IRHaierAC160::setSleep</a></div><div class="ttdeci">void setSleep(const bool on)</div><div class="ttdoc">Set the Sleep setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1715</div></div>
<div class="ttc" id="aunionHaierAc160Protocol_html_ad6354a470768f0a27ef6281be4e18a80"><div class="ttname"><a href="unionHaierAc160Protocol.html#ad6354a470768f0a27ef6281be4e18a80">HaierAc160Protocol::Clean</a></div><div class="ttdeci">uint8_t Clean</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:318</div></div>
<div class="ttc" id="air__Haier_8h_html_a509f8b471965c8a98ef07d2916c0aa78"><div class="ttname"><a href="ir__Haier_8h.html#a509f8b471965c8a98ef07d2916c0aa78">kHaierAcYrw02MaxTempC</a></div><div class="ttdeci">const uint8_t kHaierAcYrw02MaxTempC</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:141</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a41668cae582eb7607a1299f11d3fcd52"><div class="ttname"><a href="classIRHaierAC176.html#a41668cae582eb7607a1299f11d3fcd52">IRHaierAC176::toCommon</a></div><div class="ttdeci">stdAc::state_t toCommon(void) const</div><div class="ttdoc">Convert the current internal state into its stdAc::state_t equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1142</div></div>
<div class="ttc" id="air__Haier_8h_html_ab780da80fc471f004c5b34dc8f347d00"><div class="ttname"><a href="ir__Haier_8h.html#ab780da80fc471f004c5b34dc8f347d00">kHaierAcCmdTimerCancel</a></div><div class="ttdeci">const uint8_t kHaierAcCmdTimerCancel</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:87</div></div>
<div class="ttc" id="aunionHaierAc176Protocol_html_ab476a88b27ff4c4effb582242534f060"><div class="ttname"><a href="unionHaierAc176Protocol.html#ab476a88b27ff4c4effb582242534f060">HaierAc176Protocol::OffTimerMins</a></div><div class="ttdeci">uint8_t OffTimerMins</div><div class="ttdef"><b>Definition:</b> ir_Haier.h:233</div></div>
<div class="ttc" id="aclassIRHaierAC176_html_a72ea4fa72f689c54241f4ef8013fcc66"><div class="ttname"><a href="classIRHaierAC176.html#a72ea4fa72f689c54241f4ef8013fcc66">IRHaierAC176::convertSwingV</a></div><div class="ttdeci">static uint8_t convertSwingV(const stdAc::swingv_t position)</div><div class="ttdoc">Convert a stdAc::swingv_t enum into it's native setting.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:1059</div></div>
<div class="ttc" id="aIRsend_8h_html_ab7bb71697c8bb461b4103e8bb2982bfb"><div class="ttname"><a href="IRsend_8h.html#ab7bb71697c8bb461b4103e8bb2982bfb">haier_ac176_remote_model_t</a></div><div class="ttdeci">haier_ac176_remote_model_t</div><div class="ttdoc">HAIER_AC176 A/C model numbers.</div><div class="ttdef"><b>Definition:</b> IRsend.h:163</div></div>
<div class="ttc" id="anamespacestdAc_html_a99ad268c783486f9b3207cb78f48444f"><div class="ttname"><a href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a></div><div class="ttdeci">opmode_t</div><div class="ttdoc">Common A/C settings for A/C operating modes.</div><div class="ttdef"><b>Definition:</b> IRsend.h:49</div></div>
<div class="ttc" id="aclassIRHaierAC_html_a9fe53d04965efca6daf234f20d20eb5a"><div class="ttname"><a href="classIRHaierAC.html#a9fe53d04965efca6daf234f20d20eb5a">IRHaierAC::send</a></div><div class="ttdeci">void send(const uint16_t repeat=kHaierAcDefaultRepeat)</div><div class="ttdoc">Send the current internal state as an IR message.</div><div class="ttdef"><b>Definition:</b> ir_Haier.cpp:123</div></div>
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>
